+++tag.php+++

Schlagwort-Archiv Theme

Kategorie oder Seitenansicht
Autor: René A. Da Rin,   Artikel erstellt: am 27.12.2018,   aktualisiert am 31.12.2018



Wie bei allen Content Management Systemen hat auch WordPress so seine Eigenheiten. Je nachdem wie der Theme Entwickler sein Theme aufgebaut hat, kann es bei Anpassungen nötig sein, beim verarbeiten des Code zu wissen, ob es sich bei der Darstellung nun um eine Kategorie, ein Suchergebnis oder die Einzelanzeige eines Beitrages handelt.

Das hier vorliegende Theme kennt keinen  Auszug und stellt über die content.php den Beitrag mit seinem kompletten Inhalt dar. Nicht nur bei der Einzelansicht, sondern auch bei der Auflistung in Kategorien oder beim Suchergebnis. Katastrophal unübersichtlich.

Da die category.php, archive.php, search.php und single.php jeweils alle die content.php für die Darstellung des Beitrages laden, können Anpassungen nur in der content.php getätigt werden.

Anhand des Beispiels für den Auszug heisst das, nur wenn die content.php über die single.php geladen wird, soll the_content(); für die Ausgabe des Beitrages verwendet werden. In allen anderen Fällen soll the_excerpt(); zum Zuge kommen.

Man könnte jetzt mit der Holzhammermethode vorgehen und in den Dateien welche die content.php laden, eine Variable definieren, mit welcher dann in der content.php die Ausgabe gesteuert wird. Sollte theoretisch funktionieren.

Es geht aber auch eleganter. WordPress weiss in der Regel in welchem Darstellungsmodus es sich befindet. Dafür gibt es die Funktionen is_category(), is_single() und is_search().

Mit Hilfe einer IF-Abfrage lässt sich nun die Ausgabe steuern.

Shortcode im Theme verankern
Autor: René A. Da Rin,   Artikel erstellt: am 17.09.2018



Mit Shortcodes (z.B. Shortcode Ultimate) gibt es die Möglichkeit, eingefasste Textbereiche in Seiten und Beiträge hinein zu zoomen. Das wollte ich nun direkt im Theme verankern, um den Auszug und den kompletten Beitrag in der Einzelansicht ein zu zoomen. Den Shortcode einfach z.B. in die single.php um die Funktion the_content() herum zu schreiben, funktioniert nicht, da auf diese Weise der Shortcode von WordPress nicht interpretiert werden kann.

Abhilfe schafft, den Inhalt mit get_the_content() zu holen und durch die Funktion do_shortcode() zu verarbeiten. Damit auch Shortcodes aus Plugins funktionieren, muss auch noch apply_filters() angewendet werden.