SEO mit WordPress

Jeder der sich dazu entschließt ein eigenes Blog zu betreiben, der kommt wohl kaum an WordPress vorbei - denn diese Blog-Software bringt jede Menge Vorteile mit sich. Das fängt schon bei der unkomplizierten Installation an, welche man auch ohne Programmierkenntnisse ganz leicht innerhalb von 5 Minuten umsetzen kann. Bei SEO`s ist WordPress so beliebt, da man durch die Ping-Funktion neue Inhalte schnell in den Google-Index bekommt und dieses auch sonst sehr gut für die Suchmaschinen-optimierung genutzt werden kann. Jedoch sollte man einige individuelle Anpassungen am Blog durchführen, damit es auch wirklich optimal für die Suchmaschinen genutzt werden kann.

Nachfolgend werde ich einmal meine Standard Prozedur bei der Anpassung eines SEO freundlichen Weblog niederschreiben und selbstverständlich auch welche Plugins aus der Sicht eines Suchmaschinenoptimierer unabdingbar sind.

  1. Direkt nach der Installation wird die Permalink Struktur auf “Benutzerdefiniert” gestellt. Legt man mehrere Blogs auf (besonders zu einem Thema), so empfiehlt es sich hier etwas zu variieren. Meine bevorzugte Einstellung (im WordPress unter Einstellungen => Permalinks) ist die /%category%/%postname%/ - da es manchmal auch von Vorteil sein kann das Datum in die URL zu integrieren, kann auch die Einstellung /%year%/%monthnum%/%day%/%postname%/ verwendet werden.
  2. Bearbeitung der .htacess (sollte dies nicht von WordPress automatisch vorgenommen werden) damit keine Probleme mit Duplicated Content auftreten, deshalb sollten dort folgende Regeln eingetragen sein:
    RewriteCond %{HTTP_HOST} !^www. [NC]
    RewriteRule ^(.*) http://www.%{HTTP_HOST}/$1 [R=301,L]

    Dies hat zur Folge das eure Blogbeiträge nur noch unter http://www.domain.de/Beitrag/ zu erreichen sind, eine Eingabe wie http://domain.de/Beitrag/ wird automatisch mit einem 301 Redirect auf die dementsprechende URL mit www weitergeleitet.
  3. In diesem Schritt geht es per FTP auf den Server und ich bearbeite bei dem Theme die sidebar.php in der ich den Link zum Archiv entferne, damit dieses nicht von den Spidern erfasst werden kann. Wenn man sich schon einmal in der sidebar.php befindet so kann man auch gleich die <h2> bei den Überschriften entfernen, denn der H2-Tag sollte für die Suchmaschinenoptimierung genutzt werden - also einfach <h2> durch einen anderen Tag wie zum Beispiel <bold> ersetzen und auch gleich noch die .css Datei dementsprechend anpassen.
    Wer aus welchem Grund auch immer das Archiv in der sidebar.php belassen möchte, kann das Problem auch anders lösen. Zur Vermeidung das über das Archiv einiges an Duplicated Content in den Google-Index kommt, kann man auch alternativ folgenden Code in die header.php einfügen.
    <?php
    if((is_home() && ($paged < 2 )) || is_single() || is_page() || is_category()){
    echo ‘<meta name=”robots” content=”index,follow” />’;
    } else {
    echo ‘<meta name=”robots” content=”noindex,follow” />’;}
    ?>

    Dadurch werden alle Archivseiten mit noindex belegt und sollten somit nicht in Google indiziert werden.
  4. Da wir uns jetzt schon auf dem Server befinden, sollten wir auch gleich den Title über die header.php anpassen. Dies erledigen wir durch einfügen des folgenden Code im HEAD-Bereich.
    <?php
    echo ‘<title>’;
    if ( is_home() ) {
    // Blog’s Home
    echo get_bloginfo(’name’) . ‘KEYS AUF DER STARSEITE ERWEITERN’;
    } elseif ( is_single() or is_page() ) {
    // Single blog post or page
    wp_title(”);
    } elseif ( is_category() ) {
    // Archive: Category
    single_cat_title();
    } elseif ( is_day() ) {
    // Archive: By day
    echo get_bloginfo(’name’) . ‘ » ‘ . get_the_time(’d') . ‘. ‘ . get_the_time(’F') . ‘ ‘ . get_the_time(’Y');
    } elseif ( is_month() ) {
    // Archive: By month
    echo get_the_time(’F') . ‘ ‘ . get_the_time(’Y');
    } elseif ( is_year() ) {
    // Archive: By year
    echo get_bloginfo(’name’) . ‘ » ‘ . get_the_time(’Y');
    } elseif ( is_search() ) {
    // Search
    echo get_bloginfo(’name’) . ‘ » Suche: ‹’ . wp_specialchars($s, 1) . ‘›’;
    } elseif ( is_404() ) {
    // 404
    echo get_bloginfo(’name’) . ‘ » 404 - Angeforderte Seite nicht gefunden’;
    } else {
    // Everything else. Fallback
    bloginfo(’name’); wp_title();
    }
    echo ”;
    ?>

    Wurde der Code erfolgreich eingefügt, so wird der Webseiten Title optimal für Suchmaschinen dargestellt und es entfällt der Blogname welcher am Anfang jedes Titel dargestellt wurde.
  5. Jetzt kommt der letzte Schritt bei den individuellen Anpassungen auf dem Server. Es sollte vermieden werden ein Beitrag auf sich selbst verweist, also entferne ich den Link in der Überschrift (in einigen Themes ist der schon entfernt - jedoch nicht bei allen) auf der Beitragsseite (meist single.php) das zwischen dem H2-Tag nur noch folgender Code steht:
    <?php the_title(); ?>
    Soweit ich weiß kann man auch nicht bei Google News aufgenommen werden, wenn der Title / die Überschrift eines Beitrag auf sich selbst verweist. Also noch ein weiterer Grund diese unnütze Verlinkung zu entfernen.
  6. Jetzt sollte man noch eine robots.txt auf dem Server ablegen und über diese verschiedene Verzeichnisse für die Suchmaschinen sperren. Im Fall von diesem Blog sieht diese aktuell so aus:
    User-agent: *
    Disallow: /blog/wp-admin/
    Disallow: /blog/wp-content/
    Disallow: /blog/wp-includes/
    Disallow: /blog/feed/

    und somit sollen alle Verzeichnisse des Weblog vor den Spider der Suchmaschinen geschützt sein, um sicher zu gehen das kein Duplicated Content (besonders durch die Feeds) produziert wird. Eine ausführliche Erklärung zum Umgang mit der robots.txt bei einem WordPress Blog findet Ihr im Compboard Blog.
  7. Nun geht es endlich an das Einspielen der Plugins und hier starte ich immer mit btc-meta-description und btc-meta-keywords. Diese beiden Plugins ermöglichen es pro Beitrag individuell Keywords und Description einzufügen und dies auch noch Kinderleicht über die “Schreiben” Funktion in der WordPress Admin Oberfläche - ein unbedingtes must have.
  8. Weiter geht es mit dem Google Sitemaps Plugin, welches nach jedem Beitrag eine neue XML-Sitemap für das Blog erstellt und danach automatisch einen ping an Google versendet. Merke: Unter Einstellungen => Sitemap können die Funktionen dieses Plugin verwaltet werden und dort sollte man darauf achten das bei dem Punkt “Inhalt der Sitemap” die Checkbox bei Archive nicht aktiviert ist, sonst kann es schnell passieren das die Archivseiten doch in den Google Index gelangen. Hier eine gute Erklärung zu den Google Sitemaps.
  9. Als nächstes wird das Plugin o42-clean-umlauts installiert, welches in jedem deutschsprachigen Blog aktiviert sein sollte, denn dieses wandelt die Umlaute in den Beitragstiteln, Kommentaren und Feeds zu ASCII um. So wir zum Beispiel aus einem ä wird ein ae. Das Plugin zum Download in der erweiterten Deutschen Version erhaltet Ihr bei Michael Renzmann.
  10. Jetzt noch ein Plugin für eine bessere interne Verlinkung, welches unter dem Artikel einige ähnliche Posts ausgibt. Hier bei diesem Blog habe ich mich für RelatedPosts23 entschieden, welches nach den vergebenen Tags des Beitrags einige ähnliche Artikel ausgibt.

Sind diese zehn Punkte abgearbeitet dann sollte das Weblog recht Fit für die Suchmaschinen sein. Mit Sicherheit gibt es noch viele weitere sinnvolle Plugins um sein WordPress Blog besser bzw. individueller zu gestalten. Viele von diesen sollte man auch auf jeden Fall installiert haben, wie zum Beispiel Askimet welches zuverlässig vor Kommentar-Spam schützt. Aber diese weiteren Plugins hier abzuarbeiten, das würde den Rahmen dieses Beitrages sprengen und diese zusätzlichen Plugins haben auch nur indirekt etwas mit SEO zu tun.

Diese Icons verlinken auf Bookmark Dienste bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • SEOigg
  • Digg
  • Y!GG
  • del.icio.us
  • Webnews
  • MisterWong
  • Bloglines
  • Technorati
  • seekXL
  • Google Bookmarks
  • YahooMyWeb
  • Ask

Weitere Beiträge zum Thema:



Kommentare

Ein Kommentar zu “SEO mit WordPress”

  1. Matthias am 5 Mai 2008

    Schöner Post mit vielen Tipps.

    Wenn ich die PHP Codes aus Punkt 3 und 4 einfüge bekomm ich nur php Syntax Fehler, warum?

    Wäre für einen Tipp sehr dankbar.

Schreibe einen Kommentar