Joomla mit verschiedenen Templates

desktop3.pngAb und zu ist es sehr schick, Joomla mit verschiedenen Templates bzw. Layouts zu betreiben. Dieses lässt sich sehr leicht über den in Joomla! integrierten Template-Manager realisieren, der es erlaubt bestimmten Bereichen ein eigenes Template zu zuweisen. Allerdings gibt es ab Joomla! 1.012 da ein kleines Problem.

Wird auf der Frontpage auf >>weiter lesen<< geklickt, so befindet man sich immer noch innerhalb des Frontpage-Modules und das Template, welches für die Section oder Bereich dieses Artikels ausgewählt worden ist, wird nicht angezeigt, sondern das Template, welches für die Frontpage gilt – was im übriegen ja eigentlich auch richtig ist, aber in diesem Falle eben nicht erwünscht.

Um diese Funktion nun zu erreichen, sind ein paar – kleinere – Eingriffe in den Source von Joomla! nötig:

Im Source der components/com_content/content.html.php – Zeile ~397 muss folgendes geändert werden:

$_Itemid = $Itemid;

ändern in

$_Itemid = $mainframe->getItemid( $rows[$i]->id, 0, 0  );

und dann in der selben Source Datei ungefähr bei Zeile ~ 556

$row->_Itemid = $Itemid;

ersetzen durch den folgenden Code

if ( $task != 'view' && $task != 'category' ) {
$row->_Itemid = $mainframe->getItemid( $row->id, 0, 0 );
} else {
// when viewing a content item, it is not necessary to calculate the Itemid
$row->_Itemid = $Itemid;
}

Jetzt wird das gewählte Layout auch für Artikel angezeogt, welche über die Frontpage Komponente angezeigt werden. Aber bitte darauf achten, dieser kleine Tip bezieht sich auf Joomla! Installationen > Version 1.012. Für Joomla 1.5x Versionen habe ich dieses noch nicht getestet, da ich bisher die Funktion von verschiedenen Templates nicht benötigt habe.

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert