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() ) { ?> &raquo; 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() ) { ?> &raquo; 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&uuml;r die Startseite
<?php bloginfo('name'); ?>
<?php } elseif ( is_category() ) { ?> // Titel f&uuml;r die Kategorieseite
Kategorie <?php single_cat_title(''); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_single() ) { ?> // Titel f&uuml;r die ArtikelAnsicht
Artikel "<?php wp_title(''); ?>" auf <?php bloginfo('name'); ?>
<?php } elseif ( is_page() ) { ?> // Titel f&uuml;r statische Seiten
<?php wp_title(''); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_404() ) { ?> // Titel f&uuml;r die Error-Seite
Error 404 auf <?php bloginfo('name'); ?>
<?php } elseif ( is_search() ) { ?> // Titel f&uuml;r die Suchergebnisseite
<?php echo wp_specialchars($s); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_day() ) { ?> // Titel f&uuml;r Archiv (Tagesansicht)
Archiv f&uuml;r <?php the_time('j. F Y'); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_month() ) { ?> // Titel f&uuml;r Archiv (Monatsansicht)
Archiv f&uuml;r <?php the_time('F Y'); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_year() ) { ?> // Titel f&uuml;r Archiv (Jahresansicht)
Archiv f&uuml;r <?php the_time('Y'); ?> auf <?php bloginfo('name'); ?>
<?php } elseif ( is_tag() ) { ?> // Titel f&uuml;r die Tag-Seite
Archiv "<?php single_tag_title(); ?>" auf <?php bloginfo('name'); ?>
<?php } else { ?> // Titel f&uuml;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;
?>
Wie du siehst ganz einfach und schnell erledigt. Viel Spaß!

--- ende artikel ---------------------------

kOmMeNtaR sChReIbEn:



*


* (keine Veröffentlichung)