Blog



Update ewm5

Ich schulde noch ein paar Worte zum letzten Update. Das will ich mal fix nachholen.

  • Ein neuer Baseman ist dabei, der hat schöne Import-Funktionen und weitere Nettigkeiten. Für den Normalanwender dürfte das relativ egal sein, weil er den Baseman sowieso nicht sieht. Ich habe halt die neue Version für diverse Dinge gebraucht, deswegen habe ich ihn mal rein gepackt. Danke an Sven, der ist nämlich derzeit der, der den Baseman betreut.

  • Der Newsletter wurde intern überarbeitet, nach außen merkt man davon aber nichts. Es gab wohl ein Problem, dass teilweise lange Zeilen abgeschnitten wurden. Das hat Sven (schon wieder der 8-) ) in der Mail-Funktion behoben. Die ist Teil unserer Bibliothek und ich musste nur den Newsletter neu übersetzen. Naja, eigentlich. Weil der Newsletter auch direkt kodiert, wenn man HTML-Mails verschickt, war es dann doch nicht so einfach. Es hat mich ein paar Tage gekostet es so hinzubekommen, dass die Umlaute immer stimmen. Den Aufwand habe ich betreiben, weil ich es für den Newsletter ohne Diät [Link entfernt, weil Linkziel leider nicht mehr verfügbar] benötigt habe.

  • Die Sache mit den Priotitäten von Tags wird intern nun anders behandelt. Das sind die [n], die man angeben kann. Beispielsweise {[6]get="..."}. Die ganz einfachen Tags hatten das bisher nicht beachtet und man konnte bei Schachtel-Tags am Ende die Priorität nicht setzten. Ich finde es aber irgendwie übersichtlicher. Also {[9]switch="lala"} ... {[9]/switch} ist nun erlaubt. Dadurch können außerdem auch extrem komplexe Vorlagen gebaut werden, wenn man intensiv mit if-Abfragen arbeitet. Ich habe das eben bei abgekliert so umgesetzt. Dort gibt es Vorlagen für den Autor, die an verschiedenen Stellen eingebunden werden. Um Code nicht doppelt zu haben, ist das ganze sehr zerstückelt in kleine Bereiche. Also eine Vorlage die unter der und der Bedingung diese Vorlage einbindet, die dann wieder diese benutzt und so weiter.
    Auf das Ergebnis bin ich durchaus ein wenig stolz. Es klappt nämlich richtig gut.

  • Overview muss bei jedem auszugebenden Datensatz prüfen, ob dieser auch angezeigt wird. Dazu müssen evtl. auch die Rechte betrachtet werden. Bei mehreren 100 auszugebenden Seiten ist das etwas zeitintensiv. Daher wird nun direkt eine Prüfung gemacht, ob überhaupt gepüft werden muss. Das macht die Sache um etwa 1 Sekunde pro 1000 Einträge schneller. Das summiert sich aber, wenn man mehrere Ausgaben auf einer Seite hat.

  • Im Editor wird unten links ein Zeichenzähler angezeigt. Der Grund für mich ist schlicht die VG Wort. Dort kann man auch Internet-Veröffentlichungen einreichen, was aber erst ab 1800 Zeichen geht. 8-)

  • Unter Tools bei der Konfiguration kann der INI-Editor auch weitere Text-Dateien bearbeiten. Ich fummle öfter mal schnell an einer .htaccess-Datei rum, wozu das ganz praktisch ist. Allerdings sollte man wissen, was man tut. Wenn der Web-Server den Zugriff auf die Seite sperrt muss man doch wieder die Zugangsdaten rauskramen. 8-)
    In der cms.ini gibt man die Dateien einfach an. Beispiel:
    [INI_CONFIG]
    extra_1=../.htaccess
    extra_2=../robots.txt

  • Langsam wird's spannend. Neue Tags steht in der Beschreibung. Was war das gleich noch? 8-)
    {tag="abc"} gibt {action}&tag=abc, wobei abc richtig codiert würde, wenn es Sonderzeichen enthält. Ich bin spontan gar nciht mehr sciher, wozu ich das gebraucht habe. Ich glaube mittels TagMagic wurde das dann wieder überflüssig.
    {outside_template="vorlage"} baut die Vorlage um den aktuellen Inhalt außen rum. Also Die Vorlage wird geladen und die bisherige Seite an Stelle des Platzhalters main dort gesetzt. Damit wollte ich mir Arbeit sparen, habe es aber dann doch anderweitig gelöst.
    {set="..."}: Damit kann man eine Art Umgebungsvariablen setzen. Z. B. {set="type:static"} sorgt dafür, dass Links statisch ausgegeben werden. Außer dort ist bewusst wieder type:dynamic gesetzt. Bisher gibt es type:static/dynamic, url:absolute/full und gfu:full. Type und url bezeihen sich auf Links, gfu auf Dateien und Grafiken. D.h. erstmal nur auf Grafiken, bei denen dann der komplette Pfad benutzt wird. Das ist nämlich noch nicht ganz fertig und wird auch erst im nächsten Update zur Verfügung stehen. Ich habe gestern einen Feed auf Feedburner umgestellt, damit Grafiken dort funktionieren, muss der komplette Pfad angegeben sein.

  • Es gibt ein kleines Cache-System. Dazu bitte einen Blick in die cache.ini werfen:
    [page_1]
    pos=/Spezial/Tags
    param_1=tag
    max_age=14400

    [page_2]
    pos=Blog
    param_1=noc
    max_age=2880

    Das bedeutet nun, dass die Seite /Spezial/Tags gecached wird. Ausgaben, bei denen sich der Parameter tag ändert, werden jeweils auf Festplatte gespeichert und wieder ausgeliefert, falls sie nicht älter als 10 Tage sind. Bei der zweiten Seite ist es Blog und der Parameter noc. Dafür gilt der Cache nur 2 Tage (=2880 Minuten). Zufällig wird der Parameter tag für TagMagic und noc für Overview benutzt. Damit kann man also das Blättern in einem Blog und den Abruf von Tag-Seiten deutlich beschleunigen.

  • So richtig Sinn macht das dann nur, wenn man auch schöne Tag-Clouds basteln kann. Das macht dann TagMagic. Gesteuert wird über tags.ini:
    [cloud_1]
    root=/Blog
    list=../syswork/blogtags.ini
    cloud=../syswork/cloud.html
    min=3
    size_min=10
    size_max=20
    color_min=cccccc
    color_max=000000
    pattern=<a style="font-size:{size}px;color:#{color};text-decoration:none;" href="http://www.leben-ohne-diaet.de/tags/{tagencoded}">{tag}</a>


    Ruft man TagMagic nun auf, was über schedul.ini erfolgen sollte, erzeugt es aus allen Untereinträgen von "Blog" eine Wolke. Diese wird als syswork/cloud.html gespeichert. Ein Tag muss mindestend 3 mal vorkommen, die fertigen Tags sind zwischen 10 und 20 Pixel groß, die Farbe ändert sich nach Häufigkeit.

    Mittels {template="extern:../syswork/cloud.html"} wird die Wolke dann eingebunden. Achja, das ist auch neu, dass template das kann. 8-)
    Wie so etwas dann aussieht, kann man sich gerne im Blog ohne Diät [Link entfernt, weil Linkziel leider nicht mehr verfügbar] ansehen. Ganz unten auf der Seite ist die Wolke.

Etwas viel? Ja. Etwas kompliziert? Ja, auch das. Aber ich freue mich ja sogar über Rückfragen. 8-)

Entschuldigung für die vielen Tippfehler. Mein FF3 will gerade wieder keine Rechtschreibprüfung durchführen und ich habe es eilig...

Dieser Artikel wurde veröffentlicht am 23.09.2008 um 16:47 Uhr. Noch kein Kommentar.

Update ewm5 Beta

Heute gibt es ein kleines Update für die 5er Beta. Darin sind ein paar kleine Dinge enthalten wie ein neuer Mailman, der nun Umlaute in der Betreffzeile einer Mail codiert oder der Scheduler, der die schedul.ini leicht geändert handhabt.

overview hat nun einen weiteren Parameter noget bekommne. Der Grund ist simpel. Beim EInsatz von overview kann man Blätterbuttons verwenden. Die Seite, die dann angezeigt wird, steht dann in der URL. Hat man nun z. B. ein Blog, das 10 Beiträge anzeigt und dort Blättern erlaubt, aber gleichzeitig in der Seitenleiste die letzten 5 Beiträge anzeigt, so blättern auch diese 5. Das will man nicht. Deswegen wäre dort der Parameter noget richtig. Ganz abgesehen davon, dass es so besser ist, können auch echte Probleme entstehen. Blättert man zum Ende des Blogs, wobei die letzten Beiträge ein RSS-Feed und eine Übersicht sind, die beide wiederum overview verwenden, kann ein ganz schönes Chaos enstehen. Deswegen auf noget achten.

In ping.ini kann man nun eine maximale Versuchszahl einstellen, wie oft versucht wird ein Ping zu senden. Außerdem lässt sich die Serverantwort nun auch ignorieren. Seit einiger Zeit bekomme ich von feedburner nämlich keine Rückmeldung. Die Antwort von bloggerei.de wird nun ebenfalls akzeptiert, obwohl diese meiner Meinung eigentlich nicht dem Standard entspricht.

Die für SEOs interessanteste Neuerung dürfte das Nofollow-Attribut sein. Unter "Statische Seiten" kann man dies setzen. Links zu dieser Seite werden dann mit rel="nofollow" versehen. Warum das Sinn macht, würde hier zu weit führen. Vielleicht einfach mal beim Radio4Seo [Link entfernt, weil Linkziel leider nicht mehr verfügbar] reinhören.

Dieser Artikel wurde veröffentlicht am 21.05.2008 um 14:41 Uhr. Noch kein Kommentar.

RSS Reloaded

Vor ein paar Tagen habe ich es bereits angesprochen, es gibt eine neue Möglichkeit den RSS-Feed zu managen. Mit dem Live-Test bin ich sehr zufrieden. Da ein Feed selbst bei einem kleinen Blog durchaus mehrere hundert mal pro Tag abgerufen wird, rentiert sich das schon. Doch nun eine kleine Hilfe zur Implementation.

Zunächst legt man eine Vorlage für Overview an. Diese nennt sich dann sinnvollerweise overview/rss.
Ein Beispiel:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="2.0">
   <channel>
      <title>Blog Titel</title>
      <link>http://www.wollen.de</link>
      <description>Hier steht die Beschreibung vom Blog</description>
      <language>de-de</language>
      <pubDate>\Tue, 23 Sep 2008 16:47:00 +0100</pubDate>
      <lastBuildDate>{rfcnow}</lastBuildDate>
      <docs>http://www.leben-ohne-diaet.de</docs>
      <generator>eforia RSS Generator</generator>
      <managingEditor>hk@tdb.de</managingEditor>
      <webMaster>hk@tdb.de</webMaster>
{block}<item>
   <title><![CDATA[{title}]]></title>
   <description><![CDATA[{main}]]></description>
   <link><![CDATA[{link="url:full;type:static;"}]]></link>
   <pubDate>{rfcdate}</pubDate>
   <guid isPermaLink="true">{link="url:full;type:static;"}</guid>
</item>{/block}
   </channel>
</rss>


Dann wird noch eine Seite im ewm angelegt mit dem Namen RSS-Feed. Ich habe es direkt unterhalb des Blogs als letzten Eintrag angelegt. Die Seite ist aktiv, aber nicht im Menü. Wobei auch dagegen nichts sprechen würde. Die Seite selbst muss auf "Ohne Vorlage" gesetzt werden und sollte statisch erzeugt werden. Das ist schließlich der Sinn des Ganzen. Als Name wählt man z.B. "/blog/rss.xml". Das XML als Endung ist wichtig. Theoretisch könnte der Name sonst beliebig sein, jedoch habe ich festgestellt, dass manche Feedreader Bilder nicht mehr korrekt aufrufen, wenn die Datei im Hauptverzeichnis liegt. Daher die Empfehlung die Datei in einem Unterverzeichnis anzulegen, aber auch nicht in einem Unter-Unter-Verzeichnis. Wie oft aufgefrischt wird, ist eigentlich egal. Ein Wert wie 14400, also alle 10 Tage reicht völlig.




Um das Auffrischen sollte sich nämlich Blog-Update kümmern. Entsprechend tragen wir in blog-update.ini die Seite mit ein:

[refresh]
ping=1
pos_1=/
pos_2=/Blog
pos_3=/Blog/RSS-Feed
pos_4=/Blog/*2

So, damit fehlt eigentlich nur noch der Inhalt der Seite selbst:

{execmacro="overview" param="name=rss;source=/Blog;step=10;"}

Das war's dann.

Achja, eforia.de benutzt noch das bisherige rss.prg. Das muss ich noch umstellen... 8-)

Dieser Artikel wurde veröffentlicht am 31.03.2008 um 11:00 Uhr. Noch kein Kommentar.

Weg mit dem Feed

Natürlich soll der Feed nicht weg, aber rss.prg könnte es erwischen. Ich habe mir überlegt, ob ich nicht den Feed statisch anbieten sollte. Bei der Suche nach einer einfachen Lösung fiel mir auf, dass es eigentlich keine solche braucht. Alles Nötige ist längst in ewm vorhanden. Einfach eine Seite anlegen, dort direkt den XML-Code reinsetzen und mittels overview die letzten 10 Beiträge ausgeben.

Das funktioniert recht gut. Lediglich das Datumsformat im RFC-Stil hat gefehlt. Deswegen bringt das heutige Update die Tags {rfcdate} und {rfcnow} mit. Die Ausgabe sieht dann etwa so aus: Wed, 26 Mar 2008 17:48:00 +0100.

Overview kennt nun das zusätzliche Tag {newest_rfcdate}. Dort wird das Datum des neuesten von overview ausgegebenen Beitrags benutzt.

Tja, das reicht dann auch. Ich habe heute testweise in einem Blog den Feed auf diese Technik umgestellt. Nun warte ich mal ab, was so für Probleme auftreten. In Kürze kommt dann eine Anleitung zur benutzten Vorlage.

Der Vorteil ist natürlich die Erzeugung einer statischen XML-Datei. Diese kann dann vom Webserver richtig verwaltet werden. Also reine HEAD-Requests und Not-Modified-Antworten sparen schon Traffic und machen die Sache auch bei vielen Abonnenten sehr flott. Über das Modul Blog-Update wird die Feed-Datei dann auch immer richtig aufgefrischt so, dass ein manuelles Update eigentlich überhaupt nicht notwendig ist.

Mir gefällt die Lösung so gut, dass ich ernsthaft über den Wegfall des rss.prg nachdenke. Oder ist jemand anderer Meinung?

Dieser Artikel wurde veröffentlicht am 26.03.2008 um 17:48 Uhr. Noch kein Kommentar.

ewm5 Beta Update

Nach langer Zeit mal wieder ein kleines Update. Es enthält die neue Version des Baseman, im Viewer wurde die Debug-Ausgabe abgeschaltet und Tagmagic beschleunigt. Das ist eigentlich auch der Grund für das Update. In der alten Version wurden ähnliche Beiträge mit einzelnen Volltextsuchen zusammengestellt. Im ungünstigsten Fall waren das 1024 Suchen. Das war eigentlich nur als Test gedacht, wie gut das Prinzip funktioniert. Nachdem es ganz zufriedenstellende Ergebnisse liefert, habe ich das nun etwas intelligenter gemacht. Nun sind es maximal 10 Suchen und der Rest läuft über Bitoperationen.

Dieser Artikel wurde veröffentlicht am 25.03.2008 um 10:50 Uhr. Noch kein Kommentar.

TagMagic

Das neueste ewm5 Beta Update enthält ein neues Modul TagMagic. Hier folgt eine kurze Beschreibung.

Ausgabe der Tags:
{execmacro="tagmagic" param="tagout"}
Gibt die Tags aus. Mit Tags ist gemeint, was man im Editor rechts oben eingeben kann. Die einzelnen Tags sind dabei mit Leerzeichen getrennt.

Für die Ausgabe wird die Vorlage tagmagic/tagout benutzt. Diese wird pro Tag ausgegeben und der Tag selbst kann als Platzhalter benutzt werden. Beispiel:
<a href="http://www.eforia.de/tags/{tag}">{tag}</a>

Hier benutze ich allerdings einen kleinen Trick. Um schönere URLs zu erhalten, rufe ich nicht direkt das Blog auf (overview kann Tags als Parameter verarbeiten), sondern benutze den Aufbau mit http://.../tags/xxx. Damit das auch funktioniert, benötigt man noch einen kleinen Eintrag in der .htaccess-Datei:
RewriteRule tags/(.*) /programm/o.prg?pos=/Blog&tag=$1

Tipp:
Wer sich ein wenig mit Suchmaschinenoptimierung befasst, der hat sich schon mal von dem Problem der doppelten Inhalte gehört. Grob geht es darum, dass die gleichen Texte mehrfach auf einer Website (oder im Web) verwendet werden. Das Problem dabei ist, dass eine Suchmaschine wie Google nicht so recht feststellen kann, welche Version denn nun die richtige ist. Da helfen auch Milliardengewinne und über 15.000 Mitarbeiter nichts. Da muss der kleine Webmaster Mama Google helfen.
Eine Blog-Übersichtsseite ist eben genau so ein Problemkind, weil die Inhalte der Artikel auch direkt angezeigt werden. Mit verschiedenen Seiten, je nach Tag, wird das noch potenziert. Die Lösung ist aber einfach. Man setzt die Übersichtsseiten auf noindex. D.h. man sagt dem Suchmaschinen-Roboter, er soll sie nicht indizieren. Aber die dort verlinkten Artikel sollen natürlich schon beachtet werden, also follow.

Um das gut steuern zu können, habe ich folgendes in meiner main-Vorlage:
<meta name="ROBOTS" content="follow">
<meta name="ROBOTS" content="{switch="noindex"}no{/switch}index">

Wenn dann unter Bedingung/Schalter noindex angegeben wird, wird eben diese Seite als noindex ausgegeben. In unserem Fall wäre das die Blog-Startseite. Wobei z. B. auch eine Seite mit Sitemap ein guter Kandidat dafür wäre.


Anzeige ähnlicher Beiträge:
Die zweite Aufgabe von TagMagic ist die Anzeige ähnlicher Beiträge. Diese werden anhand der Tags herausgesucht. Seit ein paar Tagen teste ich das schon auf dem Blog ohne Diät [Link entfernt, weil Linkziel leider nicht mehr verfügbar] und bin mit den Ergebnissen ganz zufrieden.

Vorlage tagmagic/similar
<li><a href="{link="url:full;type:static;pos:{pos}"}">{title}</a> ({date})</li>

Die Platzhalter sind die gleichen wie bei Navigation.

Aufruf Beispiel:
<span class="subline">Ähnliche Beiträge:</span>
<ul style="margin-top:0;">{execmacro="tagmagic" param="similar:5:10"}</ul>

Das similar steht eben für die Ausgabe von ähnlichen Artikeln. Wobei nicht nur Blog-Artikel einbezogen werden, sondern eben alle Seiten. D. h. diese Funktion ist durchaus auch für normale Webseiten durchaus lohnenswert. Wieder das Beispiel von der Seite Leben ohne Diät [Link entfernt, weil Linkziel leider nicht mehr verfügbar]: Dem BMI-Rechner habe ich die Tags bmi [Link entfernt, weil Linkziel leider nicht mehr verfügbar] und body-mass-index [Link entfernt, weil Linkziel leider nicht mehr verfügbar] verpasst. Wenn ich nun einen Blog-Post mit den Tags schreibe, erscheint unter Umständen ein Link direkt zum Rechner. Das ist doch gar nicht mal so unpassend, oder?

Hinter similar wird mit Doppelpunkt getrennt die Anzahl der auszugebenden Links angegeben. Der zweite Wert gibt eine abweichende Anzahl an, falls perfekte Treffer gefunden werden. Perfekte Treffer meint Artikel, die exakt die gleichen Tags haben. Da macht es durchaus mal Sinn mehr anzuzeigen. Beide Parameter sind optional, der Standardwert ist 5.


Verschiedene Vorlagen
Zusätzlich zu tagout und similar kann man auch template=xxxx angeben und damit eine andere Vorlage anwählen. Beispiel:
{execmacro="tagmagic" param="similar:5:10;template=test"}
Dann wird die Vorlage tagmagic/test/similar benutzt.

Dieser Artikel wurde veröffentlicht am 30.10.2007 um 15:15 Uhr. Noch kein Kommentar.

ewm5 Beta Update

Ein neues Update, mit ein wenig Feinschliff:

  • Im letzten Update hatte ich eine Stelle vergessen umzustellen. So wurden teilweise noch vorkomprimierte Javascript-Dateien geladen. Deshalb hat unter Umständen das Einfügen des Durchstreichen-Symbols im Editor nicht funktioniert. Zur Erklärung: Um Übertragungsvolumen zu sparen, können die von eforia benutzten Script-Dateien komprimiert abgelegt werden. Der Browser übernimmt dann die Dekomprimierung. Allerdings ist dieses Vorgehen während einer Beta-Phase eher störend, da immer alle Dateien mehrfach erzeugt werden müssen.
    Außerdem bin ich nicht ganz sicher, ob es überhaupt noch Sinn macht. Denn Webserver wie Apache können Dateien sowieso bei der Auslieferung On-The-Fly komprimieren, wenn der Browser das unterstützt. Eigentlich sollte das dann sogar besser funktionieren, als wenn eforia sich nochmal selbst darum kümmert. Immerhin ist der Webserver genau dafür optimiert.

  • Im Modul Navigation gibt es zwei neue Platzhalter. {pos} und {lfd} fügen die entsprechenden Informationen des passenden Datensatzes ein. Das hat vor allem einen Grund. Der Platzhalter {link} fügt immer einen dynamischen Link ein. Gerade zum bloggen sind aber statische URLs besser. Mit den neuen Tags ist dann sowas möglich:
    <a href="{link="url:full;type:static;pos:{pos}"}" class="menu">&lt;&lt; {title}</a>

  • Eine neue Option in der cms.ini ist ein Schmankerl für Suchmaschinen-Optimierer:
    gostatic=nouser
     oder
    gostatic=nosession

    Gibt es bisher schon die Möglichkeit, Seiten statisch zu gestalten und erst wenn sich ein Benutzer angemeldet hat werden ihm dynamische Seiten ausgeliefert, so stellt das quasi die Umkehrfunktion dar. Wenn ein Benutzer eine dynamische Seite aufruft, dieser Benutzer aber nicht angemeldet ist, so wird er per Redirect auf die statische URL umgeleitet.

    Unterscheidung:
    Bei nouser wird dann umgeleitet, wenn kein Benutzer angemeldet ist. Es darf also durchaus eine gültige Session-ID vergeben sein, aber eben ohne Anmeldung mit Benutzername und Kennwort. Bei nosession wird nur umgeleitet, wenn keine Session-ID vergeben ist. Dazu zählt natürlich auch eine ungültige oder abgelaufene Session-ID.

    Die statischen URLs ohne Parameter können einfach wesentlich besser von Suchmaschinen erfasst werden. Mit der neuen Option geht auch Link-Liebe, die auf dynamische URLs gesetzt wird, nicht verloren. 8-)

    Die Funktion ist doch sehr experimental. Wenn eine Seite nicht aktiviert ist, es keine statische Seite gibt, eine Bedingung hinterlegt ist oder dem Benutzer die Rechte fehlen wird nicht umgeleitet. Falls jemand Probleme bemerkt, bitte melden. Das könnte vor allem auf Seiten auftreten, die eine Anmeldung benötigen.



Dieser Artikel wurde veröffentlicht am 09.10.2007 um 11:37 Uhr. 2 Kommentare.

nofollow: Was wünschen sich die Anwender

Heute möchte ich mal ein wenig Feedback von den Anwendern einfordern. Bei einer neuen Funktion gibt es zwei unterschiedliche Ansätze und ich möchte wissen, welcher davon eher gewünscht wird. Mir ist bewusst, dass es kein Thema für jedermann ist, aber vielleicht gibt es ja doch einige, die sich schon näher mit SEO auseinander gesetzt haben.

Sistrix [Link entfernt, weil Linkziel leider nicht mehr verfügbar] schreibt in seinem Blog über interne Verlinkungen und warum man manchmal dafür das Attribut nofollow benutzen sollte. Nun überlege ich, eforia entsprechend zu erweitern. Also für jede Seite würde es eine Checkbox für nofollow geben.

Dann gäbe es zwei Möglichkeiten diese Information zu nutzen.
  1. Die erste wäre, bei jedem Link zu einer solchen Seite ein rel="nofollow" einzufügen. Also wenn irgendwo im Quelltext
    <a href="{link="zur-nofollow-seite"}">
    steht, würde daraus etwas wie
    <a href="../text/zur-nofollow-seite.html" rel="nofollow">

  2. Die zweite Möglichkeit wäre, alle Module entsprechend zu erweitern, um gezielt auf die Information zuzugreifen. Also beispielsweise im Menü könnte man in der Vorlage einen Platzhalter {nofollow} verwenden, der dann für eine entsprechende Ausgabe sorgt.

Methode 1 hat den großen Nachteil, dass der Link nicht nur einen Link einfügt, sondern eine Zusatzinformation anhängt. Das ist eigentlich nicht ganz sauber. Außerdem könnte man dann nicht mehr individuell entscheiden, wie man verlinken möchte.
Methode 2 hat den großen Nachteil, dass man die Vorlagen erweitern müsste, wenn man davon Gebrauch machen will. Dafür hat man sehr genaue Kontrolle darüber, was intern passiert.

Ich würde deshalb eher zur Methode 2 greifen.

Was meinen Sie, liebe Anwender?

Methode 1 oder 2?
Oder braucht man das sowieso gar nicht?

Dieser Artikel wurde veröffentlicht am 02.10.2007 um 10:07 Uhr. Noch kein Kommentar.

Open Source beendet Entwicklung?

Heute erreichte mich eine Mail mit folgender Frage:
Opensource: heißt das, dass Sie eforia nicht mehr weiter entwickeln und pflegen. Haben Sie ein neues Programm als Ersatz?

Oh ja, genau das bedeutet das. Genauso wie Linux, Apache oder OpenOffice seit Jahren bekanntlich nicht mehr weiterentwickelt werden. 8-)

Im Ernst:
Die Freigabe als OpenSource bedeutet tatsächlich den Wegfall vieler Arbeiten. Den Aufwand aus einer Software ein Produkt zu machen ist nämlich ein vielfaches von dem, die Software zu programmieren. Damit meine ich nicht einmal Dinge wie Dokumentation oder Setup/Installations-Hilfen. Diese benötigen wir nach wie vor. Aber ich brauche keine Verpackung mit EAN-Code mehr, keine Flyer, keine Werbung, kein Affiliate-Programm, keine CDs, keine Pressearbeit, keine Versandabwicklung, keine Aktionen, keine Lizenzverwaltung, keine Vertriebskanäle, keine Messen, keine Banner, usw..

OK, ein wenig Werbung und Pressearbeit wäre zwar ganz nett, ist aber jetzt eher was, worum man sich eben kümmert wenn man Zeit hat. Vorher war es Pflicht und dazu noch eine, in der wir nicht besonders gut sind. Alle Versuche das zu ändern, das muss ich leider zugeben,  sind gescheitert. Es floss viel Zeit und Geld dafür.

Ich fühle mich nun ebenfalls wesentlich freier. eforia kann nun Funktionen bekommen wie ich oder andere Anwender es für richtig halten. Egal ob sich eine Funktion verkaufen lässt oder nicht. Das bedeutet beispielsweise ich kann auch Erweiterungen machen, die nur mit dem Apache-Webserver funktionieren. Bisher ging so etwas kaum, weil wenn eine Funktion irgendwo dokumentiert oder gar damit geworben wird, muss sie eben überall da funktionieren, was als Systemvoraussetzung angegeben ist. In einem Werbetext kann man nicht bei jeder Kleinigkeit anfangen detaillierte Unterscheidungen aufzuführen.
Konkret: Wenn ich nun beispielsweise einen Editor für .htaccess-Dateien einbaue, so muss ich mir keine Sorgen darüber machen, dass jemand das so versteht, als ob eforia dafür sorgt, dass auch auf einem IIS-Webserver diese Dateien benutzt werden können.

OK, vielleicht ist das auch nur ein Problem von mir, dass ich niemanden etwas versprechen will, was hinterher nicht gehalten wird. Ich bin eben kein Werber.

Etwas anderes, was mich entlastet, aber sicher nicht als Vorteil für den Anwender wahrgenommen wird, ist der Wegfall des Supports. Nein, kein völliger Wegfall, aber doch Einschränkungen. Kostenpflichtige Hilfe gibt es nach wie vor. Wer aber kostenlose Hilfe möchte, muss sich ans Forum wenden. So steht das Wissen nicht nur einem, sondern allen zur Verfügung. Auch kann es schon mal sein, dass ich keine Lust habe Fragen zu beantworten, wenn der Fragesteller sich nicht mal die Mühe gibt die Frage vernünftig zu stellen. Oder er hätte mit 2 Minuten Recherche die Lösung längst gefunden.

Oder noch besser finde ich die Leute, die meinen, wenn sie für 70 Euro eine Software gekauft haben, steht ihnen auch zu, dass man ihnen damit die komplette Website baut. Also nicht etwa: "Haben Sie einen Tipp wie ich meine alte Website übernehmen kann?" sondern "Anbei meine Frontpage-Dateien und FTP-Zugangsdaten für meinen Provider xyz. Bitte installieren Sie dort eforia und importieren Sie die alten Daten.". Das schlimmste bei solchen Leuten ist, dass wenn man sich die Zeit nimmt, eforia installiert und ihnen in Stunden beibringt, wie sie die Daten am Besten übernehmen, es immer unschön endet. Es reihen sich Wochen mit 2-3 Support-Mails pro Tag und irgendwann erreicht einen eine Nachricht in der Form "Die Software ist ja total sch**e. Ich will mein Geld zurück. Außerdem verklage ich sie auf Schadensersatz für die bisher aufgewendete Zeit.".

OK, das ist übertrieben. Aber so weit weg von der Realität ist es gar nicht. Mit 13-jähriger Supporterfahrung kann ich aber sagen: Die Leute, die am unverschämtesten Support verlangen, machen garantiert Probleme, wenn sie diesen Support bekommen.
Unverschämt meint dann beispielsweise Jemand, der nichts von HTML versteht, aber für Kunden als Dienstleistung die Erstellung von HTML-Seiten anbietet. Das versucht er dann über den kostenlosen Support abzuwickeln.

Genug geschimpft. Sorry.

Natürlich helfe ich gerne, wenn jemand Probleme mit meinem Baby eforia hat. Ich glaube, nicht mal die oben beschriebene Spezies hat sich da bisher beschweren können. Besonders mag ich, wenn es knifflige Fragestellungen sind, wie man was am geschicktesten Lösen könnte. Klar helfe ich da gerne. Da kann ich ja zeigen was eforia kann. 8-)
Auch kann es ja sein, dass an einem Problem einfach ein Software-Fehler schuld ist. Software hat nun mal Fehler, gerade die Beta-Versionen dürfen das sogar. Ganz fehlerfrei bin selbst ich trotz 25 Jahren Programmiererfahrung nicht. 8-)
Und letztendlich ist der Support auch ein guter Rückkanal für die Probleme und Wünsche der Anwender. Also Support ist wichtig. Support ist eine Chance und nicht nur Last.

Das ist nicht das Problem. Aber das ich unverschämte Leute in Zukunft einfach ignorieren kann, das freut mich dann doch. 8-)
Zu ehrlich? Hey, das ist ein Blog und keine Pressemitteilung. Die Kommentare stehen jedem offen auch anderer Meinung zu sein.


Aber zurück zum Anfang. Opensource bedeutet nicht, dass eforia nicht weiter entwickelt wird. Momentan eher im Gegenteil. Es bedeutet, dass ich mehr Zeit in die Entwicklung investieren kann und mich nicht mehr mit dem "Außenrum" aufhalten muss. Aufgeben würde ich die Entwicklung, wenn es niemand benutzt. Wobei ich im Moment so viele private und firmeninterne Projekte damit laufen habe, dass mich auch das nicht mal stören würde. 8-)

Achso, und eforia ist ja auch mehr als eforia web manager. Darin steckt ja das eforia Framework, die tdblib-Funktionen und auch die tdbengine. Damit machen wir unsere Kundenprojekte. Das ist die Basis der ganzen Firma und ebenfalls OpenSource. Wenn wir das nicht mehr weiterentwicklen, könnten wir zu machen.

Dieser Artikel wurde veröffentlicht am 01.10.2007 um 17:49 Uhr. Noch kein Kommentar.

ewm5 Beta Update

Heute habe ich ein neues Update für die Beta von ewm5 eingespielt. Es gibt eine Reihe kleiner Änderungen, aber auch einige Neuheiten.

Kleine Änderungen:
  • Der Editor lädt nicht mehr gleich die passende Sprachdatei, wenn vorhanden. Das ist eigentlich nur eine interne Sache. Während der Betaphase erleichtert es mir das Abstellen von Updates.

  • Aktiv und In Menu lassen sich nun einzeln schalten. Die bisherige Eingabehilfe, dass beim Aktivieren der Seite auch In Menu aktiviert wurde, hat mich mehr gestört als geholfen.

  • Im IE erzeugt die Enter-Taste wieder einen Absatz statt nur einen Zeilenumbruch. Das habe ich auf vielfachen Wunsch aus dem Forum wieder eingeführt.

  • Der Editor kann nun auch ein Icon für Durchstreichen erhalten. In der Editor-Konfiguration einfach aktivieren.

  • Insertcode kann mehrfach mit der gleichen Area benutzt werden (ging bisher tatsächlich nicht).

  • Benutzt man die Vorbelegung des statischen Namens in tree.ini, wird nun die lfd immer mit mindestens 5 Zeichen ausgegeben. Der Grund ist Google-News. Zur Aufnahme ist eine eindeutige ID mit mindestens 3 Zeichen Bedingung. Allerdings darf es keine Jahreszahl sein, deswegen ist man mit 5 Zeichen auf der sicheren Seite. Es ist also lediglich eine Vereinfachung, wenn jemand bei Google News gelistet werden möchte.

  • Der Link-Einfüge-Dialog wurde überarbeitet. Nun kann ein rel= angegeben werden. Zusätzlich ist besagtes rel mit einem Klick auf "nofollow" vorzubelegen. Genauso das target mit "_blank". Zusätzlich können die Spezifikationen für den Link Tag für Typ und URL nun einfach per Radio-Button aktiviert werden. Klingt kompliziert? Ein Screenshot zeigt es:

Bleiben noch die zwei größeren Neuerungen:

Blog-Update
Ein neues Programm schedul/blog-update.prg kann neue Einträge erkennen und automatisierte Aktionen durchführen. Typischerweise ist das bei neuen Blog-Artikel, deswegen auch der Name. Gesteuert wird das Programm über blog-update.ini.
Beispiel:
[main]
## Worauf Prüfen
pos=/Blog
## Wieviele Datensätze dort auf Datum prüfen?
num=10
## Wenn dort erster sichtbarer Eintrag neuer ist als:
last_timestamp=24.09.2007_09:12:49

[refresh]
## last_change-Datum in ping.ini setzen?
ping=1
## Startseite
pos_1=/
## Seite mit Namen "Startseite"
pos_2=/Startseite
pos_3=/BMI-Berechnung
pos_4=/Blog
## Erste 2 Seiten unterhalb /Blog
pos_5=/Blog/*2

[log]
log=1
file=../logfiles/blog-update.log

Es werden die 10 obersten Unterpunkte von Blog geprüft. Falls dort einer dabei ist, dessen Datum neuer als das in last_timestamp angegebene ist, wird eine Aktion ausgelöst. Typischerweise wird in einem Blog ja ein Beitrag mit neuem Datum oben an gestellt. Genau das würde dann eine Aktion auslösen. last_timestamp wird dann automatisch auf das aktuelle Datum gesetzt.
Bei der Prüfung werden sichtbare Punkte herangezogen, genauso wie im RSS-Feed bzw. bei Overview. D. h. es können neue Seiten als Entwurf angelegt sein (nicht Aktiv) oder für zeitgesteuertes Publizieren mit einem Zeitraum versehen sein. blog-update.prg schlägt dann erst zu, wenn der Beitrag tatsächlich sichtbar ist.
Tipp: Wenn man einen Beitrag automatisch erscheinen lassen will, sollte das Datum des Beitrags dem Erscheinungsdatum (Bedingung -> Zeitraum) entsprechen.

Die Aktion die durch Blog-Update ausgelöst wird, ist vor allem das automatische Auffrischen von Seiten. Wie im Beispiel zu sehen können die Seiten einfach angegeben werden. Bei pos_5 werden die ersten 2 Seiten unterhalb Blog aufgefrischt. Die erste ist der gerade neu eingestellte Artikel und die neue zweite Seite, muss einen Link zu dem neuen Artikel erhalten. Deswegen eben die ersten 2 Seiten.

Als Sonderfunktion gibt es noch ping=1. Ist das aktiviert, wird das aktuelle Datum in die ping.ini geschrieben. Wozu das dient, wird gleich erklärt.


Ping

Das ebenfalls nagelneue Programm schedul/ping.prg ist in der Lage sogenannten Ping-Diensten per XML-RPC mitzuteilen, dass ein neuer Beitrag veröffentlicht wurde. Auch hier erfolgt die Steuerung wieder über eine INI.
ping.ini:
[services]                      
service_1=http://ping.wordblog.de/
last_success_1=24.09.2007_09:12:52
service_2=http://ping.feedburner.com
last_success_2=24.09.2007_09:12:53
service_3=http://rpc.technorati.com/rpc/ping
last_success_3=24.09.2007_09:12:54
#service_4=http://rpc.pingomatic.com/RPC2
#last_success_4=23.08.2007_20:53:45

[main]
name=Blog ohne Diaet
url=http://www.leben-ohne-diaet.de/blog
last_change=24.09.2007_09:12:49

[log]
log=1
file=../logfiles/ping.log

Man sieht unter services verschiedene Dienste eingetragen und wann dorthin der letzte Ping erfolgreich gesendet wurde.

Unter main ist der Name des Blogs und die URL zur Blog-Startseite angegeben. Das last_change-Datum gibt das Datum der letzten Änderung an. Genau dieser Wert kann von Blog-Update automatisch gesetzt werden. Solange dieser Wert neuer ist, als bei einem der Services angegeben, versucht ping.prg einen Ping zu senden. Dadurch ist es auch kein Problem, falls einer der Dienste mal nicht erreichbar sein sollte.

So ein Ping ist durchaus sinnvoll. Gerade große Online-RSS-Reader ersparen sich so häufige manuelle Abrufe. Auch ist es erstaunlich wie schnell ein neuer Artikel über Google gefunden werden kann. Allerdings sollte man nicht zuviel Pingen und nur Dienste, die wirklich Sinn machen. Für deutsche Blogs sind die drei im Beispiel schon ganz gut. Pingomatic ist ein Dienst, der wieder zahlreiche andere anpingt. Allerdings bekomme ich von dort kein richtiges Ergebnis und erfahre leider nicht warum. Da halte ich mich lieber an diejenigen, die dem Standard entsprechen. Es macht sowieso keinen Sinn englische Blogverzeichnisse anzusprechen, die keine deutschen Nutzer haben. Außer man legt wert darauf, viel Kommentar- und Trackback-Spam zu bekommen. 8-)


Wichtig:
Wenn man Blog-Update und Ping nutzen will, muss man den Aufruf dafür selbst in der schedul.ini eintragen. Von einer automatischen Installation habe ich abgesehen, da es nur dann wirklich Sinn macht, wenn man ein Blog betreibt. Die meisten ewm5 Nutzer dürften das zumindest im Moment noch nicht tun. Es reicht dann aber auch der Aufruf alle paar Minuten.


Noch Fragen dazu?

Dieser Artikel wurde veröffentlicht am 24.09.2007 um 14:27 Uhr. Noch kein Kommentar.
Zeige 21 - 30 von 44
Anfang Zurück Vorwärts Ende


Hier bloggt Horst Klier mit und über eforia web manager und was dazugehört (HTML, Javascript, Internet, Webdesign, Such- maschinenoptimierung, usw.).

>> Zur Blog Startseite

RSS-Feed
abonnieren


Übersicht über alle Beiträge



eforia® ist ein eingetragenes Markenzeichen.
Alle anderen Marken und Markenzeichen gehören Ihren jeweiligen Besitzern.
Letzte Aktualisierung dieser Seite: 26.04.2024 / 14:48:04
Suche  
Login / Userdaten
Impressum/Datenschutz