FAQ: Unterschiedliche Vorlagen für unterschiedliche Kategorien
Frage
Ich verwende eine Reihe von Kategorien. Ich möchte erreichen, dass die Einträge zu einer Kategorie etwas anders gestaltet werden als die Einträge zu den übrigen Kategorien. Kann ich die Vorlagen in Abhängigkeit von der Kategorie festlegen?
Antwort
Standardmäßig erlaubt Movable Type dies nicht. Es gibt aber einige Techniken, wie man das Verhalten doch erreichen kann.
Sie können die so genannten Supplemental Category Tags verwenden. Das ist eine Sammlung verschiedener Kategorie-bezogener Tags. Unter anderem sind darin auch die »MTIfCategory« und »MTIfPrimaryCategory« Tags enthalten, mit welchen Bedingungen bezüglich der Kategorien formuliert werden können.
In MT Extensions, Per Category Templates können Sie einige Hinweise lesen, wie die Supplemental Category Tags verwendet werden können.
Auf Elises Learning Movable Type können Sie den Artikel Category Customizations finden. Dieser beschreibt einige Kategorie-bezogene Aufgaben. Dazu gehören zum Beispiel das Ausschließen einzelner Kategorien, das Einschließen einzelner Kategorien und die Anzeige des vorherigen sowie nächsten Eintrags innerhalb einer Kategorie.
Bitte keine speziellen Plugins
Selbst wenn Sie keine speziellen Plugins installieren wollen, können Sie fast alles mit Hilfe des Compare Plugin erreichen.
Falls Sie das Compare Plugin nicht kennen sollten, lesen Sie bitte Vergleiche für bedingte Generierungen. In dem Artikel beschreibe ich dieses allgemein verwendbare Plugin, welches man in wirklich vielen Situationen benutzen kann.
Nehmen wir einmal an, dass Sie eine bestimmte Vorlage in der Mehrzahl der Fälle benutzen wollen. Aber die Kategorie »FAQ« soll eine besondere Vorlage erhalten. Erzeugen Sie dafür zunächst zwei Vorlagen-Module. Benennen Sie diese zum Beispiel wie folgt.
- module-archive-category-default
- module-archive-category-faq
Kopieren Sie den Code für das standardmäßige Kategorie-Archiv sowie das FAQ Kategorie-Archiv in diese Vorlagen. Fügen Sie dann die folgenden Zeilen in die normale Movable Type Vorlage für das Kategorie-Archiv ein.
<MTIfEqual a="[MTCategoryLabel]" b="FAQ">
<MTInclude module="module-archive-category-faq">
<MTElse>
<MTInclude module="module-archive-category-default">
</MTElse>
</MTIfEqual>
Die Vorlage für das Kategorie-Archiv ist also nichts weiter als ein Verteiler, welcher entweder das eine oder das andere Vorlagen-Modul einbettet.
Falls Sie das MTInclude Tag nicht kennen, lesen Sie bitte Vorlagen mit MTInclude organisieren, um dieses wirklich wichtige Movable Type Tag kennen zu lernen.
Aber auch komplizierte Bedingungen können mit Hilfe des Compare Plugin erledigt werden. Angenommen Sie nutzen eine Hierarchie von Kategorien. Unter der FAQ Kategorie möge es mehrere Ebenen weiterer Kategorien geben. Wie könne Sie nun herausfinden, ob eine Kategorie sich im FAQ-Teilbaum befindet? Dies kann wie folgt umgesetzt werden.
<MTSetVar name="mgs_is_cat" value="0">
<MTParentCategories>
<MTIfEqual a="[MTCategoryLabel]" b="FAQ">
<MTSetVar name="mgs_is_cat" value="1">
</MTIfEqual>
</MTParentCategories>
<MTIfEqual a="[MTGetVar name='mgs_is_cat']" b="1">
<MTInclude module="module-archive-category-faq">
<MTElse>
<MTInclude module="module-archive-category-default">
</MTElse>
</MTIfEqual>
Wenn Sie die obigen Zeilen nicht sofort verstehen, schauen Sie sich doch bitte meinen Artikel Bedingungen mit Compare Plugin kombinieren an. Darin beschreibe ich, wie auch komplexe Bedingungen mit dem Compare Plugin umgesetzt werden können.
mgs
Feedback erwünscht!
Wie fanden Sie den Eintrag? Interessant? Langweilig? Ich freue mich über Ihren Kommentar. Wenn Ihnen der Eintrag geholfen hat, setzen Sie doch einen Link auf http://www.movable-type-weblog.de/.
Bitte keinen Spam
Um das Weblog vor Spam zu schützen, wird das MT-Approval Plugin eingesetzt. Sie müssen einen neuen Kommentar zunächst in der Vorschau ansehen, bevor dieser auf dem Server gespeichert werden kann. Ferner wird ein Kommentar erst gesichtet, bevor er freigegeben wird. Näheres finden Sie in meinem Artikel Weblog Spamming Grundlagen, wo einige Schutzmaßnahmen skizziert werden.
Wenn Sie sich an TypeKey angemeldet haben, wird Ihr Kommentar automatisch freigegeben.
Neuen Kommentar schreiben
TypeKey wurde an dieser Stelle vorübergehend deaktiviert. Erstellen Sie Ihren Kommentar bitte ohne TypeKey oder melden Sie sich im Vorschau-Dialog an.

