WordPress HowTo - Schöne Titel und Metadaten
05/2008
Wolltest du schon immer wissen, wie man schöne Seitentitel in WordPress hinbekommt (sow wie hier auf EvitaNet)? Das geht ganz leicht mit Hilfe von sogenannten “conditional tags”.
Dazu braucht man nur die header.php um einigen Code ergänzen. Zuerst schauen wir mal das Original an:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>> <head profile="http://gmpg.org/xfn/11"> <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /> <title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> » Blog Archive <?php } ?> <?php wp_title(); ?></title> <link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" /> <link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" /> <link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" /> <?php wp_head(); ?> </head> |
Der interessante Teil davon ist:
1 | <title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> » Blog Archive <?php } ?> <?php wp_title(); ?></title> |
Das ergibt einen langweiligen Titel. Wir wollen nun, dass sich der Titel den jeweiligen Seiten anpasst. Also zB. bist du auf der Tag-Seite “Fische” dann gib folgenden Titel aus: Archiv für Tag “Fische” auf mein Blogname.
Das ist nicht nur schöner, sondern wird auch von Suchmaschinen gern gesehen (auch wenn behauptet wird Google interessiert sich nicht mehr für Titel und Metatags).
Okay, los gehts mit dem Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <title><?php if ( is_home() ) { ?> // Titel für die Startseite <?php bloginfo('name'); ?> <?php } elseif ( is_category() ) { ?> // Titel für die Kategorieseite Kategorie <?php single_cat_title(''); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_single() ) { ?> // Titel für die ArtikelAnsicht Artikel "<?php wp_title(''); ?>" auf <?php bloginfo('name'); ?> <?php } elseif ( is_page() ) { ?> // Titel für statische Seiten <?php wp_title(''); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_404() ) { ?> // Titel für die Error-Seite Error 404 auf <?php bloginfo('name'); ?> <?php } elseif ( is_search() ) { ?> // Titel für die Suchergebnisseite <?php echo wp_specialchars($s); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_day() ) { ?> // Titel für Archiv (Tagesansicht) Archiv für <?php the_time('j. F Y'); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_month() ) { ?> // Titel für Archiv (Monatsansicht) Archiv für <?php the_time('F Y'); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_year() ) { ?> // Titel für Archiv (Jahresansicht) Archiv für <?php the_time('Y'); ?> auf <?php bloginfo('name'); ?> <?php } elseif ( is_tag() ) { ?> // Titel für die Tag-Seite Archiv "<?php single_tag_title(); ?>" auf <?php bloginfo('name'); ?> <?php } else { ?> // Titel für alle anderen Seiten (falls vorhanden) <?php bloginfo('name'); ?> <?php } ?></title> |
Nach demselben Prinzip kann man auch die meta-tags (<meta name=”keywords” content=” ” />) und die meta-description (<meta name=”description” content=” ” />) gestalten.
Wer in der Artikelansicht nicht nur den Artikeltitel, sondern auch die dazugehörigen Tags ausgeben will, verwendet dazu folgenden Code:
1 2 3 4 5 6 7 8 9 10 11 | <?php global $post; $tags = get_the_tags($post->ID); if($tags) : foreach($tags as $tag) : $sep = (empty($keywords)) ? '' : ', '; $keywords .= $sep . $tag->name; endforeach; ?><?php echo $keywords; ?> <?php endif; ?> |
--- ende artikel ---------------------------





kOmMeNtaR sChReIbEn: