Falls also irgendwer hier den Haken findet, darf er hinterher von sich behaupten, Garvins Code gefixt zu haben – wenn das keine Auszeichnung ist, dann weiß ich's nicht.
Worum geht es? Der folgende Code bohrt serendipity_fetchPrintEntries so auf, dass man analog dazu eine Liste von Einträge ausgeben kann, allerdings nicht aus einer bestimmten Kategorie, sondern nach bestimmten Tags. Die Funktion in der config.inc.php sieht so aus:
Code: Select all
function smarty_show_tags($params, &$smarty) {
global $serendipity;
$o = $serendipity['GET']['tag'];
$serendipity['GET']['tag'] = $params['tag'];
$e = serendipity_smarty_fetchPrintEntries($params, $smarty);
echo $e;
if (!empty($o)) {
$serendipity['GET']['tag'] = $o;
} else {
unset($serendipity['GET']['tag']);
}
}
$serendipity['smarty']->register_function('show_tags', 'smarty_show_tags');Code: Select all
{show_tags tag=$staticpage_custom.rel_tags template="related_articles.tpl" limit=$staticpage_custom.rel_numb noSticky="true"}Das funktioniert mit zwei Einschränkungen:
1. Garvins Beispielcode für den Funktionsaufruf in der .tpl-Datei war: {show_tags tag="MeinTag"} – tatsächlich funktioniert es aber nur ohne Anführungszeichen, soweit ich bislang getestet habe. Warum?
2. Die Übergabe von mehreren Tags oder Tags, die Leerzeichen enthalten, funktioniert (evtl. wegen 1.?) derzeit gar nicht, wäre aber in diesem Projekt sehr wünschenswert.
Fragen, Anregungen, sonstige Geistesblitze aller Art?
YL