WordPress 2.5 und der neue Title Template Tag

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 15 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

Mit der neuen Version 2.5 von WordPress hat der Template Tag wp_title ein Update erfahren, damit werden Plugins überflüssig und die Anpassung im Theme sollte bei einem Update auf 2.5 oder einem Neustart mit 2.5 an diesen Tag angepasst werden.

Die Übernahme des Code ist im übrigen ein Beispiel, wie die Community auf WordPress einwirken kann, denn die neue Funktionsweise entstammt dem Plugin „Optimal Title“. Darauf habe ich schon im Artikel „WordPress Update auf 2.4/5 ?“ hingewiesen.

Wie erwähnt, ändert sich aber auch viel in den Funktionen und so wird WP noch suchmaschinenfreundlicher, zum Beispiel in dem der Template Tag wp_title() neu erstellt wurde. Er basiert nun auf dem Plugin Optimal Title, welches man sich ab dann sparen kann.

Die Funktion wurde erweitert und man muss nicht mehr auf umständliche Form oder ein Plugin zurück greifen. Bisher hatte ich den Titel des Blog wie folgt ausgegeben, Erläuterungen dazu hatte ich vor langer Zeit im Beitrag „WP – WordPress Titel ändern“. Der title-Tag befindet sich im Header, also in der header.php des Themes ändern. Der folgende Syntax funktioniert in allen WP-Versionen, ist aber nicht optimal für eine Version von WordPress größer 2.5. Eine optimale Wahl für diese Version von WordPress will ich im Anschluss zeigen.


<?php
if ( is_archive() ) { _e('Kategorie'); } wp_title('');
if ( is_archive() ) { _e(' - '); }
if ( is_single() ) { _e(' - '); }
if ( is_page() ) { _e(' - '); } bloginfo('name');
?>

Seit der Version 2.5 wurde nun die Funktion wp_title erweitert, folgender Parameter sind möglich, wobei alle schon im Standard gefüllt sind und man nicht unbedingt einen Parameter übergeben muss.

  • sep – Übergabe eines Seperator-Zeichens, Trennzeichen bzw. text vor und nach dem Post-Title
  • display – Ausgabe des Titel; interessant, wenn man den Titel nicht ausgeben will, sondern an eine Variable übergibt und weiter verwendet
    • 1 (True) – standard
    • 0 (False)
  • seplocation – links (left) oder rechts (right) des Post-Title soll das Zeiche bzw. der Text stehen. Wie das ganze aussehen kann, im Anschluss zwei Beispiele

wp_title($sep = '»', $display = true, $seplocation = '')

Die obige Variante für WordPress kleiner Version 2.5 könnte dann für WordPress Version 2.5* wie folgt aussehen.


<?php if ( is_archive() ) { _e('Kategorie'); } wp_title('-', true, 'right'); bloginfo('name'); ?>

Die Ausgabe mit unterschiedlichem Parameter seplocation sieht wie folgt aus. Das Blog-Name ist „WordPress-Buch“.

Left

 - WordPress Plugins für eine erhöhte SicherheitWordPress-Buch

Right

WordPress Plugins für eine erhöhte Sicherheit - WordPress-Buch

Den Begriff Kategorie will ich ausgeben, weil es einen Mehrwert für den Besucher bietet, vor allem dann, wenn er die Seite als Lesezeichen ablegt. Für Suchmaschinen hat das keine Relevanz, da ich die Indizierung des Blog wie folgt einschränke. Auch dazu gibt es bereits einen Artikel, so dass ich hier nicht näher drauf eingehen möchte.


<?php if((!is_paged() ) && ( is_single() || is_page() || is_home() || is_category())){ echo '' . "\n"; } else { echo '' . "\n";} ?>


In diesem Zusammenhang kann man im übrigen die Abfrage der Startseite, bisher durch !is_paged() ) && ( is_single() realisiert, mit den neuen Tag is_front_page() austauschen. Dieser Conditional Tag ist seit Version 2.5 verfügbar.

Weitere Links

Von Frank Bültge

bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.

11 Kommentare

  1. Toller Beitrag und vor allem schreibst du so, dass es auch verständlich rüberkommt! Beim Stöbern hier ist mir jetzt ein Licht aufgegangen, danke.
    Was macht das „\n“ ?

  2. Frank bei noindex macht dies keinen Sinn

    noodp, noydir

    ich mag doch dann , wenn meine Seite im Index ist meine eigene meta description anzeigen und nicht die vom DMOZ 😉

    lg

  3. HI Frank
    Du hast oben geschrieben:

    content noindex, follow, noodp, noydir

    dies bedeutet der Reihe nach:

    die Seite nicht in den Index aufnehmen, =noindex
    aber den Links folgen, =follow

    verwende nicht die DMOZ Kurzbeschreibung als kurzen Text bei den Suchergebnissen,=noodp

    nütze nicht die Yahoo Directory Kurzbeschreibung als kurzen Text bei den Suchergebnissen=noydir

    wenn die Seite sowieso nicht im Index erscheint kann auch keine Kurzbeschreibung dort bei den Suchergebnissen auftauchen, daher macht noodp und noydir mit noindex einfach keinen Sinn

    das gehört zu index. follow, noodp, noydir

    nachlesen:naja ich kann einen Artikel dazu auf webdesign in de veröffentlichen ;);)

    lg

Kommentare sind geschlossen.