Vor kurzem habe ich nunmehr eine neue Kategorie „S9y im Web“ eingerichtet (siehe auch
Meine Web Welt). Kann sein, dass ich so noch etwas umbenenne und verschiebe, aber hier möchte ich hauptsächlich über dessen Funktionalität schreiben bzw. für mich eine Gedächtnisstütze meine Arbeit hinterlassen. In dieser Kategorie landen Einträge die ich in del.icio.us getätigt habe. In das Blog werden sie mittels des „RSS Aggregator“ Plugins geholt. del.icio.us erlaubt es, dass jeder „Tag“ einen eigenen Feed hat, sodass ich ganz gezielt nur S9y bezogene Links in diese Kategorie ziehen kann. Wobei mir wichtig war – im Gegensatz zu einem WordPress Plugin – dass pro Link ein eigener Eintrag erstellt wird.
In del.icio.us kann ich neben den „tags“ auch die Felder „title“, „url“ und „notes“ befüllen. Der RSS Aggregator wandelt den „title“ auch gleich in den „Titel“ des Eintrags um. Die „notes“ wird zum Eintragstext. Allein die „url“ wird nicht automatisch angezeigt. Nun, ich wollte nicht all die Änderungen vornehmen, die in den Erläuterungen zum „RSS Aggregator“ Plugin aufgezeigt werden. Jedoch macht es keinen Sinn einen Artikel über eine Website zu haben ohne auf diese zu verlinken.
Somit habe ich mich laienhaft auf die Suche gemacht und nunmehr meinen eigenen „workaround“ geschaffen. Im Verzeichnis des hier verwendenten Themes sucht man die Datei „entries.tpl“. In dieser müssten die Zeilen
<div class="serendipity_entry_body">
{$entry.body}
auffindbar sein (je nach Theme könnte es auch ein bisschen anders aussehen). Dies ist der Bereich der den Inhalt des jeweiligen Eintrags (also den Text – wie diesen hier) definiert Dort habe ich die drei Zeilen (nach langem herumprobieren)
{if $entry.properties.ep_aggregator_articleurl<>""}
<br/><br/>Link zu: <a href="{$entry.properties.ep_aggregator_articleurl}">{$entry.title}</a>
{/if}
eingefügt. (
Ergänzung vom 27.1.06: Danke an
YellowLed, der mich auf die Verwendung der richtigen Zeilenschaltung hingewiesen hat.) Was bewirken diese Zeilen. Ich kann es nur laienhaft erklären, da ich kein Programmierer bin und eher mittels „trial and error“ arbeite. Also:
- Zeile 1 fragt ab ob für diesen Eintrag eine URL aus einem RSS Feed vorhanden ist. Stammt der Beitrag nicht vom Aggregator dann ist das Feld leer und die nächsten zwei Zeilen werden übersprungen. Stammt der Beitrag vom Aggregator dann geht es mit der nächsten Zeile weiter
- In Zeile 2 wird zuerst eine Absatzmarke gesetzt damit der Link nicht gleich dem Text folgt
- Danach wird der fixe Text „Link zu:“ in den Beitrag eingefügt
- Abschliessend wird der Link zum Website eingefügt. Das Ziel ist dabei die URL die der Aggregator aus dem Feed geholt hat (der Inhalt des Feldes „url“ in del.icio.us). Der URL-Text (also die Variable „{$entry.title}“) ist der Titel des Beitrags und somit auch der Inhalt des Feldes „title“ von del.icio.us.
Das ganze ist noch nicht ganz perfekt. Natürlich könnte ich auch für die Kategorie „S9y im Web“ ein eigenes Template „verwenden“ damit das ganze besser wirkt. Der Nachteil wäre aber: bearbeite ich den Beitrag und lebe als Kategorie z.B. auch „Serendipity“ fest, dann würde dort zwar der Beitrag mit Text erscheinen, aber ohne URL zur besprochenen Website. Es zahlt sich also aus ein einziges Theme und eine einzige „entries.tpl“ zu verwenden und diese eher mittels if-Abfragen flexibler zu gestalten.
Im Moment bin ich jedoch zufrieden, was ich im „Selbststudium“ herausgefunden habe. Ein weiterer Verbesserungsschritt folgt aber sicher in nächster Zeit.
Schreibe einen Kommentar