WordPress ist das am häufigsten verwendete und beliebteste Weblog-System im Internet.
Obwohl WordPress standardmäßig bereits mit vielen guten Konfigurations-Möglichkeiten ausgestattet ist, hapert es bei den bordeigenen Mitteln ein wenig an der Möglichkeiten, WordPress für Suchmaschinen zu optimieren (SEO). In diesem Beitrag möchte ich Ihnen hierzu einige vorbereitende Anpassungen vorstellen, die Sie durchführen sollten.
In einem zweitenBeitrag „5 Top-Plugins für die Suchmaschinenoptimierung von WordPress“ zeige Ihnen dann, welches die aus meiner Sicht 5 wichtigsten Plugins sind, die Sie bei der Suchmaschinenoptimierung Ihres Blogs verwenden sollten.
Einige der hier vorgestellten Tipps stammen aus dem lesenswerten Beitrag „Pimp my WordPress“ von Marcus Tandler (alias Mediadonis), der sich allerdings mit einer älteren Version von WordPress beschäftigt. Was zur Folge hat, dass einige Tipps nicht mehr zur Version 2.5 kompatibel sind. Ich habe hier Anpassungen vorgenommen oder nach Alternativen gesucht sowie neue Tipps zusammengestellt.
Ein Hinweis vorab: Wenn Sie – wie im Fogenden zum Teil beschrieben – Änderungen an php-Dateien oder der .htaccess-Datei vornehmen möchten, müssen Sie den Dateien mithilfe eines FTP-Programms zunächst die richtigen Schreibrechte zuweisen. Mehr Informationen zu den Schreibrechten gibt es hier.
1. Permalinks für Beiträge
Min erster Tipp betrifft die „Adress-Struktur“, also die URLs Ihres Blogs bzw. Ihrer Beiträge. Für Google und andere Suchmaschinen ist es besser, wenn Ihre URLs „sprechen“. Verwenden Sie daher eine sogenannte Permalink-Struktur.
http://www.rhein-konzept.de/wordpress/seo-fuer-wordpress „spricht für sich“ und ist damit besser als z. B. das voreingestellte http://www.rhein-konzept.de/?p=5.
Um WordPress auf Permalinks umzustellen, gehen Sie im Admin-Bereich auf „Einstellungen“ – „Permalinks“ und klicken Sie unter dem möglichen Einstellungen „Individuelle Struktur“ an.
In das Feld daneben kopieren Sie folgenden Code:
/%category%/%postname%/
Wenn Sie die Kategorie nicht dazu nehmen möchten, geben Sie nur /%postname%/
ein.
Ihr neuer Beitrag erhält dann als URL immer den Kategorienamen und den Namen des Beitragstitels. Letzteres können Sie jedoch manuell jederzeit anpassen.
2. Canonical URL (Duplicate Content I.)
Wenn Ihr Blog und damit auch Ihre Beiträge sowohl unter www.meinblog.de als auch unter meinblog.de erreichbar sind, laufen Sie Gefahr, dass Google dies als „duplicate content“ interpretiert und deshalb abwertet.
Sie verhindern dies, indem Sie in die Datei „.htaccess“ folgenden Code schreiben, der in den meisten Fällen (jedenfalls auf Apache-Servern mit aktiviertem mod_rewrite) funktionieren dürfte:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
WordPress übernimmt diesen Job übrigens seit Version 2.3 automatisch, sofern eine .htaccess-Datei vorhanden ist und WordPress Schreibzugriff darauf hat. WordPress leitet dann permanent auf die Adresse um, die Sie im Admin-Bereich unter „Einstellungen – Allgemein“ im Feld „WordPress-Adresse (URL)“ eingegeben haben. Wenn Sie Ihre .htaccess-Datei allerdings schreibgeschützt lassen möchten, können Sie den Code – wie hier beschrieben – manuell eingeben.
Sie finden die .htaccess-Datei in Ihrem Rootverzeichnis, in der Regel ein Ordner namens „httpdocs“. Sie können die Änderung vornehmen, indem Sie sich mit einem FTP-Programm auf Ihrem Server einloggen und die vorhandene Datei auf Ihren PC herunterladen, um sie dann manuell in einem Text-Editor zu bearbeiten, abzuspeichern und wieder auf den Server zu laden.
Sollte es die Datei .htaccess noch nicht auf Ihrem Server geben, dann erstellen Sie eine einfache Text-Datei mittels eines Text-Editors, geben den genannten Code ein und speichern die Datei ab. Benennen Sie die Datei dann manuell in „.htaccess“ um, bevor Sie sie auf den Server laden.
Weitere interessante Einstellmöglichkeiten für die .htaccess-Datei finden Sie übrigens im Blog von Michael Wöhrer.
3. Ping & Trackbacks
Wenn Sie in Ihrem Blog auf einen Beitrag aus einem anderen Blog verweisen, dann können den Inhaber dieses Blogs per Trackback oder – sofern er auch WordPress einsetzt – per Ping darüber infomieren. Was ein Trackback bzw. Ping ist, können Sie sehr anschaulich in einem weiteren Beitrag von Michael Wöhrer nachlesen.
Damit das mit dem Ping auch funktioniert, geben Sie unter „Einstellungen“ – „Schreiben“ unterhalb von „Pingdienste“ am besten folgende Server ein:
http://rpc.pingomatic.com/
http://ping.wordblog.de/
Dies sind die geläufigsten und wichtigsten. Mehr Server machen keinen Sinn, da man sogar Gefahr läuft, wegen doppelter Pings auf einer Blacklist zu landen.
4. Duplicate Content II.
[Bitte lesen Sie zu diesem Punkt auch die Kommentare unten]
Beitragsinhalte können in Ihrem Blog an verschiedenen Stellen auftauchen, z. B. auch in Monatsübersichten oder auf Suchseiten. Damit Google hier nicht zuviel doppelte Inhalte findet, die sich negativ auf das Ranking bei Google auswirken, sollten Sie Ihren Blog so einstellen, dass nur die Hauptseite, einzelne Posts bzw. Artikel, (statische) Seiten und Kategorien von der Suchmaschine indiziert werden.
<?php if((!is_paged() ) && ( is_single() || is_page() || is_home() || is_category())){ echo '<meta name="robots" content="index, follow" />' . "n"; } else { echo '<meta name="robots" content="noindex, follow, noodp, noydir" />' . "n";} ?>
Seit der Word-Press-Version 2.5 kann die Abfrage der Startseite – bisher durch !is_paged() ) && ( is_single() möglich – auch mit den neuen Tag is_front_page() realisieren.
Dieser Code-Schnippsel stammt übrigens von Frank Bueltge, dessen Blog noch mehr empfehlenswerte Beiträge zum Thema WordPress enthält.
5. Menütitel in der Sidebar bzw. in Widgets
Viele Menüpunkte in der Seitenleiste von WordPress werden (je nach dem von Ihnen verwendeten „Theme“) in <h2>- oder <h3>-Code gesetzt, damit sie als Überschrift formatiert werden. Allerdings werden gerade diese <h2>- und <h3>-Überschriften von Google beim Indizieren Ihrer Homepage relativ hoch gewichtet. Dass Google hier die Sidebar-Überschriften wie „Kategorien“, „Blogroll“ oder „Links“ als genau so wichtig erachten soll wie Ihre – tatsächlich viel wichtigeren – Beitragsüberschriften, ist unter dem Aspekt der Suchmaschinenoptimierung kaum sinnvoll.
Deshalb sollten Sie den Code entsprechend anpassen.
Zunächst ändern Sie dazu den entsprechenden Eintrag in der CSS-Datei (style.css), z. B.:
#sidebar h2 {
font-family: 'Lucida Grande', Verdana, Sans-Serif;
font-size: 1.2em;
}
in:
#sidebar .widgettitle {
font-family: 'Lucida Grande', Verdana, Sans-Serif;
font-size: 1.2em;
}
Bei Ihnen sieht der Text ab Zeile 2 natürlich normalerweise anders aus, je nachdem, was für ein Theme Sie benutzen. Sie können den „alten“ Eintrag natürlich auch bestehen lassen und stattdessen einfach kopieren und die erste Zeile entsprechend anpassen.
Dann suchen Sie in der Datei functions.php nach dem folgenden Code:
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
Genau so wird der Code bei Ihnen wahrscheinlich nicht aussehen. Das Wichtigste ist, dass Sie nach den <h2>-Tags Ausschau haben und diese nach dem folgenden Schema ersetzen:
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<div class="widgettitle">',
'after_title' => '</div>',
));
Auch hier gilt wieder: Je nach Theme sieht der Eintrag anders aus oder ist unter Umständen gar nicht vorhanden. Ist dies der fall oder fehlt bei Ihnen die Datei „functions.php“ sogar ganz, erstellen Sie einfach eine Date dieses Namens und geben Sie dann folgenden Code ein:
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '',
'after_widget' => '',
'before_title' => '<div class="widgettitle">',
'after_title' => '</div>',
));
?>
Jetzt müssen Sie allerdings noch darauf achten, dass auch das von Ihnen verwendete „Theme“, das ja vom Standard-Theme abweichen kann, eigene Sidebar-Elemente mit sich bringen kann. Daher sollten Sie in der Datei sidebar.php (und anderen ähnlich klingenden Dateien) ebenfalls nach <h2>- und <h3>-Codes suchen und diese dann nach folgendem Muster ersetzen:
<h2> ... </h2>
austauschen durch:
<div class="widgettitle"> ... </div>
Gegebenenfalls müssen Sie diese Änderungen auch noch in manchen php-Dateien der von Ihnen zusätzlich installierten Widgets vornehmen.
Um den Titel der Blogroll bzw. der „Links“ anzupassen, müssen Sie beispielsweise Änderungen in der Datei „bookmark-template.php“ vornehmen. Wie das geht, habe ich im Beitrag WordPress: Blogroll-Ausgabe in der Sidebar formatieren beschrieben.
Soweit zu den bordeigenen Möglichkeiten, die WordPress „bietet“. Wenn Sie diese Änderungen durchgeführt haben, haben Sie den ersten Grundstock zur Suchmaschinenoptimierung gelegt. Als zweiten Schritt sollten Sie zusätzlich die Tipps im Beitrag „5 Top-Plugins für die Suchmaschinenoptimierung von WordPress“ lesen und umsetzen. Denn die in diesem Beitrag vorgestellten 5 Plugins sind im Prinzip unverzichtbar, wenn Sie Ihren Blog für Suchmaschinen optimieren möchten.
Hallo Matu,
danke für den Hinweis, ich hab’s geändert.
Grüße
Wolfram
Hallo,
erst mal Danke für die Anleitungen/ -en! Unter Punkt 4 müssen die „angestringten“
. „n“;
durch
. „n“; //Zeilenumbruch
ersetzt werden.
Gruß Matu
Noch einmal zum Thema „Duplicate Content bei WordPress“:
Rainer Meyer begründet unter dem von ihm angegebenen Link (lesenswert!) seine Ansicht, dass es bei WordPress eigentlich nicht zu Duplicate Content kommen kann, mit einem Zitat von Adam Lasnik aus dem Google Blog:
„Wenn es z. B. auf eurer Website sowohl eine reguläre Version als auch eine Druckansicht für Artikel gibt, von denen keine durch robots.txt oder mittels eines noindex-Metatags blockiert wird, dann suchen wir uns aus, welche Version wir listen.“
In der Konsequenz müsste das bedeuten, dass ein und derselbe geschriebene Artikel bei Google nur 1 Mal auftaucht, da sich Google bei mehreren Versionen eben eine passende aussucht.
Inwieweit das auf eine Druckversion eines Artikels zutrifft, kann ich – mangels Druckversion auf meinen Seiten – nicht beurteilen. Bei anderen „Versionen“ von Artikeln, die z. B. über mehrere Kategorien verlinkt werden, ist dies nicht der Fall. Sie sind zum Teil mehrfach im Google-Index vorhanden. Vgl. http://www.rhein-konzept.de/sprache/desd-links-nachgeladen/ und http://www.rhein-konzept.de/allgemeines/desd-links-nachgeladen/
Sprich: Google sucht sich hier nicht nur eine Version des Artikels heraus, sondern listet beide. Damit besteht zumindest die Gefahr, dass Google hier auch eine Version als doppelten Content ansieht.
Hallo Rainer,
interessanterweise ist mir das kurz vorher auch bereits aufgefallen. Ich habe diesen Tipp, denn man so oder in ähnlicher Form häufig liest, vielleicht etwas zu voreilig übernommen.
Ich teste gerade schon andere Möglichkeiten. Bei mir liegt das Problem konkret darin, dass Beiträge, die mehr als einer Kategorie zugeordnet sind, von Google als doppelter Content angesehen werden. Ob es der Seite schadet, wäre dann noch die nächste Frage.
Google Webmaster Tools nennt es jedenfalls ein „Problem mit der Meta-Beschreibung“ und „den title-Tags“ bzw. „doppelte Meta-Beschreibung“ bzw. „doppelte title-Tags“.
Trotzdem natürlich Danke für den Hinweis.
Grüße
Wolfram
Der Tipp unter 4 führt dazu, dass die Suchmaschinen kein Links von Tags(Schlagworten) aufnehmen. Das dadurch angeblich doppelter Content vermieden würde ist normalerweise nicht richtig. Auf meiner Website gibt es unter http://www.train-und-coach.de/duplicate-content-und-wordpress.html
weitere Infos.
Hallo Sven, danke für den Hinweis, ich habe den Text etwas angepasst.
das mit deinem ( 2. Cannonical URL (Duplicate Content I.) ) ist doch überflüssig, das macht wp doch automatisch.
lg