Kategorieübersicht als Artikel + Links zu anderen Artikeln dieser Kategorie Dieser "Hack" verändert die Darstellung der Kategorieansicht wie folgt: es wird der neuste Artikel einer Kategorie anstelle der Artikelübersicht angezeigt und an beliebiger Stelle hat man eine Liste (wer will kann den ******* auch in ein TPL auslagern, ist aber langsamer) mit den neusten Artikeln.
Wers braucht... PHP-Code: <?php /* a) Folgende beide Funktionen einfach in die Datei system.class.php kopieren (class ... { [HIER REIN] }). b) Die alte Funktion "category" löschen. c) Template "kategorie.tpl" erstellen. Verfügbare Felder: {artikel} - hier landet der Artikel gemäß der Optik aus dem Template article.tpl {liste} - hier landet die Artikelliste. Theoretisch fertig. Die Artikelansicht müsst ihr natürlich auch noch dahingehend anpassen, dass die Liste eingebunden wird. Momentan wird ja nur auf der Übersichtsseite der Kategorie die Liste eingebunden. Aber an dem Codebeispiel unten könnt ihr ja sehen, wie das geht. Viel Erfolg. Grüße, Philipp */
function category($id){
// aktuellsten artikel in variable speichern // und für weiterverarbeitung vorbereiten
$artikel_id = $GLOBALS['Sql']->getdata("SELECT max(id) FROM " . SQL_PREF . SQL_TBL2 . " WHERE category = '".$id."'"); $artikel_dt = $this->article($artikel_id[0]['max(id)']); // artikel dieser kateogrie aufbereiten // und in variable speichern $articles = $this->getcatarticles($id); // inhalte ausgeben return $GLOBALS['Template']->load("kategorie",array('artikel' => $artikel_dt, 'liste' => $articles));
}
function getcatarticles($id){
// neuste artikel per sql auslesen
$artikel = $GLOBALS['Sql']->getdata("SELECT id,title FROM " . SQL_PREF . SQL_TBL2 . " WHERE category = '".$id."' ORDER by date"); // artikel in schleife abarbeiten // optik per css über die klasse "catarticle" frei gestaltbar for( $x = 0; $x < count( $artikel ); $x++ ){ $daten .= "<span class='catarticle'><a href='?page=art&artid=".$artikel[$x]['id']."'>".$artikel[$x]['title']."</a></span><br />"; } // liste zurückgeben return $daten;
}
?> __________________ Philipp Gérard Gewöhnliche Menschen denken nur daran, wie sie ihre Zeit verbringen. Ein intelligenter Mensch versucht sie zu nützen. - Arthur Schopenhauer |