SEO Optimierungen für WordPress

Heute will ich berichten wie ich meinen Blog SEO freundlich gemacht habe. Bei WordPress ist dies ja ein wenig eigen und es finden sich im Netz abertausende Anleitungen die, wahrscheinlich, zum Gleichen oder ähnlichem Ergebnis kommen.

Ich gehe an der Stelle mal davon aus dass Euer Server bereits entsprechend konfiguriert ist und Rewrite, Pagespeed, Deflate, Headers, Mime, Gzip und Expire unterstützt werden. Sollte dies nicht der Fall sein wendet Euch zuerst an euren Hoster / Systemadministrator um die entsprechenden Module in den Webserver einbauen / aktivieren zu lassen.

Sollte das alles bereits getan sein, haben wir schon mal ein Grundgerüst und in Sachen SEO bereits viel getan.

Vorne weg sollte man wissen das SEO nicht nur freundliche URL’s sind sondern Google auch die Geschwindigkeit, Scripte, CSS, Bilder, Cache, Usability, HTML Code und natürlich auch die Komprimierung einer Website bewertet. Es gibt noch viele weitere SEO Kriterien aber auf die genannten sollte eine gewisse Prio liegen. SEO ist eben ein sehr komplexes Thema und dreht sich nicht nur um Backlinks und der gleichen. Wie man SEO betreibt will ich euch auch gar nicht erklären sondern nur wie Ihr euren Blog SEO technisch optimieren könnt. Was SEO genau ist könnt Ihr gern bei Wikipedia nachlesen. Es geht hier auch rein um On Page SEO, also die technische Seite.

WordPress hat aus SEO Sicht nun einen großen Vorteil. Es gibt die Möglichkeit von Plugins, die einem vieles der Arbeit abnimmt und eine gewisse Grundvoraussetzung erfüllt.

WordPress hat allerdings mit den Plugins auch einen riesen Nachteil. Jedes Plugin schreibt im WordPress Header seine eigenen Informationen, auch wenn diese vielleicht bereits vorhanden sind oder man diese gar nicht haben will. Aber dazu später mehr.

Ich verwende für mein WordPress 3 Plugins. HeadJS, W3 Total Cache und WordPress SEO von Yoast. Die Plugins findet man alle kostenfrei im WordPress Plugin Store.

Welches SEO Plugin macht nun was?

Fangen wir mit W3 Total Cache an. Das ist das mächtigste und kompliziertes WordPress Plugin in dieser Auswahl.

Ist W3 Total Cache installiert, gibt es Links in der Navigation und oben in der Statusleiste einen neuen Punkt Namens Performance.

In den Generall Settings könnt Ihr die einzelnen Caches aktivieren oder auch deaktivieren. Ich habe aktuell Alle Caches aktiviert und verwende dazu einen Memcache Server für die Performance. Der Ram ist einfach schneller als jede Festplatte 🙂 

Hinzu kommt noch New Relic und Cloudflare.

Kommen wir zum Punkt „Page Cache“. Dies sollte der wichtigste Cache für die SEO Bewertung sein.

Hier sollten im Bereich „General“ alle Punkte aktiviert werden außer „Cache requests only for…(Eure Domain)“, „Don’t Cache pages for logged in Users“ und „Don’t Cache Page for following User roles“.

Im Bereich „Cache Preload“ sollte das Update Intervall auf 900 Sekunden stehen, Pages per Intervall auf 50 und in der Sitemap sollte /sitemap.xml stehen. Zum Schluss noch ein haken bei Preload the Post Cache upon publish Events aktivieren und weiter zum Bereich Purge Policy: Page Cache.

Dort sollten die Punkte Front page, Post page, Blog feed, rss2 und Post author Pages aktiv sein. Das Purge Limit sollte mit 20 ausreichend sein.

Der Bereich Advanced unterscheidet sich je nachdem welche Cache Methode Ihr in den General Settings gewählt habt.

Gleich sein sollten die Punkte Maximum lifetime of Cache mit 3600 Sekunden und Comment Cookie Lifetime mit 1800 Sekunden.

Die Felder Accepted query Strings und Rejected User Agents sollten leer sein.

Im Feld Rejected Cookies sollte wptouch_switch_toggle stehen. und bei Never Cache following pages wp-.*\.php und index\.php in jeweils einer Zeile stehen. Die Cache Exception sollte diese Einträge haben wp-comments-popup.php wp-links-opml.php wp-locations.php .

Im Nontrailing Slash Page Feld sollte das stehen sitemap(_index)?\.xml(\.gz)? [a-z0-9_\-]+-sitemap([0-9]+)?\.xml(\.gz)?

Natürlich jeweils eine Zeile. Eh Klar 🙂

Das meiste dürfte das Plugin eh von selbst ausfüllen und so müsst Ihr nur die Zeiten anpassen oder eben Änderungen vor nehmen wenn Ihr wisst was Ihr tut. Jede einzelne Einstellung kann ich leider nicht durchgehen und dies ist einfach der wichtigste Cache gewesen.

Das nächste Plugin ist das SEO Plugin. Dies generiert euch die URLS’s mithilfe von Htaccess, verankert die Keywords, erstellt die Sitemap und alles son kram.

Ein wichtiger Punkt findet sich unter Titel & Metas. Dort solltet Ihr im Bereich <head> Bereich aufräumen die RSD Links, WLW Manifest und die RSS Links ausblenden.

Unter Sitemap sollte die Sitemap Funktion auf jeden Fall aktiviert werden.

Unter Permalink solltet man „Remove stop Words from Slug“ und „Die Kategorie Basis aus URL entfernen“ aktivieren.

Die anderen Punkte können nach Bedarf und Wissen eingestellt werden.

Als nächstes gehen wir auf „Dateien editieren“. Dort wird die Robots Datei und die htaccess Datei erstellt. In der Robots.txt sollte auf jedenfall die Zeile Disallow: /wp-admin/ enthalten sein.

Die htaccess Datei wird eigentlich automatisch erstellt, diese sollte jedoch noch erweitert werden.

Kopiert diesen Inhalt zusätzlich in das htaccess Feld

[su_note note_color=“#c1c1b6″]<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>[/su_note]

Zusätzlich im Bereich des <IfModule mod_expires.c> fügt Ihr noch die Zeile hinzu

[su_note note_color=“#c1c1b6″]ExpiresDefault „acces 4 days“[/su_note]

Das war es dann auch mit dem zweiten Plugin.

So schwer ist SEO Optimierung eigentlich nicht oder? Ok, bis jetzt haben wir auch nur Plugins benutzt und keine wirklich Nervenaufreibende Arbeit.

Kommen wir also zum 3. Plugin. HeadJS. In diesem Plugin müsst Ihr eigentlich nichts tun außer den Code um eine Kleinigkeit zu erweitern.

Geht dazu zu den Plugins und sucht in der Liste HeadJS Plus und klickt auf bearbeiten.

Ihr seit nun im Code Editor. Dort müsst Ihr nun diesen Bereich finden

[su_note note_color=“#c1c1b6″]/* Sort out the Head JS */
$headJS = ‚<script type=“text/javascript“ src=“‚ . get_bloginfo(‚wpurl‘) . ‚/wp-content/plugins/‘ . $this->_pluginName . ‚/js/head.min.js“></script>‘;[/su_note]

Den ersetzt Ihr einfach mit diesem

[su_note note_color=“#c1c1b6″]/* Sort out the Head JS */
$headJS = ‚<script type=“text/javascript“ async src=“‚ . get_bloginfo(‚wpurl‘) . ‚/wp-content/plugins/‘ . $this->_pluginName . ‚/js/head.min.js“></script>‘;[/su_note]

Ich habe hier lediglich den Zusatz „async“ eingefügt um die JS Scripte asynchron zu laden und die Anzeige des WordPress nicht zu blockieren.

Ist das auch erledigt dann habt Ihr ca 95% der Leute, die angeblich gutes SEO machen, bereits etwas voraus.

Machen wir weiter. Alle Bilder die Ihr auf dm Blog habt solltet Ihr entsprechend optimieren. Sowohl von der Bildgröße als auch von der Dateigröße. Je kleiner die Dateigröße desto besser.

Die Bilder sollten auch alle einen Alt Tag und die Bild Größenangabe im Code enthalten. 

Nun wird es ein wenig spezifischer. Wenn die oben genannten Schritte erledigt sind einfach einmal alle Caches über den Performance Button leeren.

Danach die Seite aufrufen und mit einem Rechtsklick den Quelltext anzeigen lassen.

Besonderes Augenmerk solltet Ihr auf den Head Bereich eurer Seite haben.

Google bewertet zum Beispiel die Anzahl der CSS und JS Dateien die dort geladen werden und das Rendern und Anzeigen der Seite damit blockieren oder verzögern.

Es sollte dort also im besten Fall nur eine einzige CSS Datei geladen werden und die js Scripte sollten Asynchron geladen werden.

Um dies zu erreichen muss man zunächst herausfinden wohin das jeweilige Script oder CSS Datei gehört. Dies steht aber meistens im Link bzw. im Ort des Links. Eine Theme CSS oder JS Datei wird sehr selten im Plugin Verzeichnis liegen.

[important]Ab hier ist es sehr Wichtig das Ihr immer ein Backup macht da der Code des WordPress und der Plugins / Themes geändert wird. Eine falsche Änderung / Code Zeile kann zur Zerstörung / Nicht- Erreichbarkeit  der Seite führen!![/important]

Das einfachste in diesem Prozedere ist die Zusammenfassung der CSS Dateien des jeweiligen Themes.

Es gibt immer eine Style.css die mit geladen werden muss, um die Seite überhaupt anzuzeigen. Alle anderen CSS Dateien können also Problemlos dort integriert werden. Man sucht sich also die CSS Dateien die zusätzlich geladen werden, kopiert den Inhalt dieser Dateien und fügt es in die Style.css des jeweiligen Themes ein. 

Meistens werden nur Fonts oder ähnliches nachgeladen, welche also wirklich keinen großen Inhalt haben.

Habt Ihr die Dateien kombiniert und den Inhalt in die Style.css eingefügt, so könnt Ihr die weiteren css Dateien aus dem Header entfernen. Dies geht am einfachsten über die function.php des Themes.

Dazu muss man sich einfach die Funktion aus dem Theme suchen, die das Laden der CSS Dateien auslöst.

Mit einem Eintrag in der Form

[su_note note_color=“#c1c1b6″]remove_action(‚wp_head‘, ‚funktionsname‘);[/su_note]

wird diese Funktion entfernt und die Ausgabe erscheint nicht mehr im Quellcode.

Nach diesem Prinzip geht man nun mit jedem einzelnen Script vor. Eine Schwierigkeit ist dabei natürlich die Plugin Optimierungen. Man muss viele Plugins manuell bearbeiten und die Änderungen könnten bei einem Update verloren gehen. Aber SEO ist ja auch keine einmalige Sache sondern ein fortlaufender Prozess der nicht nur aus Links setzen besteht.

Diese arbeit macht sich nur sehr selten jemand aber wird absolut belohnt. Bei Google erreiche ich mit meinem Blog somit 91 von 100 Punkten und die Optimierungen gehen weiter 🙂

In diesem Sinne, Happy SEO ing 🙂

 

Share it!Share on FacebookEmail this to someoneShare on Google+Tweet about this on Twitter

1 Gedanke zu „SEO Optimierungen für WordPress“

Schreibe einen Kommentar