SEO für WordPress ohne Plugins

25. Mai 2010 - WordPress Tipps - 15 Kommentare

SEO für WordPress ohne Plugins

WordPress ist schon von Haus aus gut dafür eingestellt, von Suchmaschinen gefunden zu werden. Das Standard Theme sowie die meisten kostenlosen Templates, besteht aus sauberen, gut für Maschinen lesbaren Code. Durch wenige Handgriffe im Theme, kannst Du Deinen Blog optimal für Suchmaschinen einrichten.

Den Title-Tag optimieren

Der Title-Tag, in der header.php, ist für die Suchmaschinenoptimierung einer der wichtigsten Faktoren. Es ist der Name des Dokuments und das erste was die Suchmaschine von deiner Seite lernt, hier sollten die Wörter stehen für die Du gefunden werden willst. Der Title im WordPress Default Theme war eine lange Zeit nicht wirklich optimal eingestellt, was jetzt aber behoben wurde und auch insbesondere im neuen Standard Theme Twenty Ten sehr schön gelöst ist.

Der Name deines Artikels sollte im Title-Tag vor dem Namen deines Blogs stehen, da Suchmaschinen den ersten Worte des Titels mehr Bedeutung schenken und es so auch für den Suchenden leichter zu erkennen ist, worum es auf deiner Seite geht. Sollte das in Eurem Theme noch nicht so sein, schlage ich vor es wie im derzeitigen Default Theme zu machen.

Wer möchte kann sich seinen Title-Tag aber auch noch differenzierter gestalten, je nach dem in welchem Bereich Deiner Webseite der Besucher sich gerade befindet. Startseite, Kategorien, Archive und beispielsweise die Suchresultate können verschieden angepasste Title-Tags besitzen:

<title><?php
if(is_single() || is_page()) {
  single_post_title(); echo ' | '; bloginfo( 'name' );
} else {
if(is_category() || is_archive()) {
  wp_title(''); echo ' auf '; bloginfo( 'name' );
} else {
if(is_front_page() || is_home()) {
  bloginfo('name'); echo ' | '; bloginfo( 'description' );
} else {
  wp_title(''); echo ' | by creative! ';
} } } ?></title>

Meta-Tags: Keywords & Description

Ebenfalls im Kopf eines HTML Dokuments befinden sich die Meta-Keywords und die Meta-Description. Diese waren früher sehr gut dafür geeignet, bessere Positionen bei den Suchmaschinen zu erlangen. Nachdem diese Methode allerdings, vor über 10 Jahren schon, ausgenutzt wurde, haben beide im Grunde überhaupt keinen Einfluss mehr auf Eure Rankings.

Dennoch sucht Google beispielsweise in eurer Meta-Description, um eine kleine Beschreibung für die Suchresultate zu generieren, findet Google dort nichts, wird meist eine relevante Stelle aus dem normalen Text gewählt. Wollt Ihr diese Elemente ohne Plugins direkt kontrollieren, könnt Ihr die WordPress Tags und das Feld Auszug (Excerpt) benutzen um diese Daten für jede Unterseite einzutragen und im Quellcode wieder auszugeben:

<?php if(is_home()) : ?>
 <meta name="description" content=" <?php bloginfo( 'description' ); ?> ">
<?php else : ?>
 <meta name="description" content=" <?php the_excerpt_rss(); ?> ">
<?php endif; ?>
<meta name="keywords" content="<?php
$posttags = get_the_tags();
if ($posttags) {
foreach($posttags as $tag) {
echo $tag->name . ' ';
}
}
?>">

Das ist eine der simpelste Möglichkeit, Tags und Description dynamisch im Template auszugeben. Auf der Frontpage wird die Blog Description verwendet und auf den Unterseiten die spezifische Beschreibung aus dem Excerpt-Feld. Dieser Eintrag muss, wie der Title in die header.php in den Head Bereich des Dokuments. Die kurze Beschreibung sollte nicht mehr als etwa 160 Zeichen haben, da sie sonst nichts in das kleine Feld unter den Suchresultaten bei Google passt.

URL-Struktur umschreiben

Die von WordPress erzeugten URLs haben normalerweise diese Form: domain.com/?p=126, können aber mittels mod_rewrite beliebig verändert werden. Dazu geht Ihr, im Admin Menü, auf den Bereich Einstellungen, auf die Seite Permalinks und wählt dort die gewünschte URL-Struktur aus. Ich persönlich wähle meist die möglichst einfachste Form aus, in dem ich im Feld Benutzerdefinierte Struktur nur /%postname%/ eingebe, was eine URLs in dieser Form erzeugt: domain.com/artikelname/.

URL-Struktur umschreiben

Damit die Änderungen wirksam werden brauchst du die sogenannte .htaccess Datei, die man in der Regel selbst erstellen und hochladen muss. Du nimmst einen einfachen Text bzw. HTML Editor und erstellst eine leere Datei mit dem Namen .htaccess ohne Dateiendung. Auf der Permalink Seite schlägt cheap viagra pills WordPress Dir den Code für diese Datei vor, den du einfach in deine leere Datei kopierst, abspeicherst und ins WordPress Hauptverzeichnis hochlädst. Hast du das gemacht, kannst du die Änderungen aus dem Permalink Menü übernehmen und gleich schon betrachten. Links auf alte URLs werden von WordPress automatisch weitergeleitet, es gehen keine Besucher oder Google Pagerank verloren.

Semantisch korrekte Überschriften

Suchmaschinen mögen es wenn die HTML Überschriften sinngemäß verwendet werden. In einer vernünftigen Struktur würde die H1 als Überschrift, ganz oben, für den Blog Namen verwendet werden. Die H2 Als Artikel Überschrift, bei gleichbleibender H1 und die H3-H6 als Unterüberschriften, unter der H2 im Text. Google scheint insbesondere H2 und H3 Überschriften zu verwenden, um den Sinn einer Seite zu verstehen.

Viele Theme Designer benutzen beispielsweise aber auch H3 Überschriften in der Sidebar, in denen dann bloß so etwas wie ‘Kategorien’ oder ‘Die neusten Artikel’ steht, anstatt zum Text relevante Wörter. Daher empfehle ich Überschriften nur im Content zu verwenden. Mit CSS können die Titel in der Sidebar auch ohne HTML H1-H6 Überschriften auf die gleiche Größe gebracht werden:

Kategorien

Auch andere, für den Inhalt des Textes, unrelevante HTML Überschriften, wie beispielsweise ‘Einen Kommantar schreiben’ in der comment.php, sollten mit dieser Methode angepasst werden.

Duplicate Content vermeiden

Duplicate Content bedeutet, das ein Inhalt auf einer Webseite unter verschiedenen URLs erreichbar ist. Wenn man auf der Frontpage beispielsweise, ganze Artikel anzeigt, ohne sie durch den more-tag zu kürzen, ist der Inhalt schon doppelt erreichbar, nämlich auf der Artikel URL selbst und auf

sildenafil on line

der Frontpage. Gleichzeitig aber wahrscheinlich auch in allen angegebenen Kategorien, Tags und entsprechenden Unterseiten.

Wenn Google jetzt Deinen Inhalt, zu einer passenden Suchphrase, anzeigen möchte, muss es sich zwischen einer dieser Unterseiten entscheiden. Oft landet der Google Sucher dann auf einer Tag oder Kategorien Seite, wo der passende Beitrag zwischen 10 oder 20 anderen irgendwo versteckt ist, anstatt auf dem Artikel selbst.

Es hilft seine Blogartikel mit dem more-tag beim schreiben sinngemäß zu kürzen, noch effektiver ist es allerdings den Suchmaschinen gleich zu verbieten Kategorien und Tags überhaupt in den Index mit aufzunehmen. So steht der einzelne Artikel nicht mehr in Konkurrenz zu seinen eigenen Duplikaten. Mittels spezieller Anweisungen für die Suchmaschinen Roboter lässt sich das sehr einfach in ein WordPress Theme integrieren:

<?php if(is_category() || is_search() || is_archive() || is_tag()) : ?>
<meta name="robots" content="noindex, follow">
<?php else : ?>
<meta name="robots" content="index, follow">
<?php endif; ?>

Auch dieser Code wird in den Head Bereich eingetragen. Wenn es sich um eine Kategorie, Suchergebnis, Archiv oder Tag-Seite handelt wird noindex, follow ausgegeben. Das bedeutet diese Seite soll nicht in den Suchmaschinenindex gelangen, dennoch aber angesehen, alle Links verfolgt und Linkstärke weitergegeben werden. Alles andere wird wir immer behandelt index, follow ist quasi die Grundeinstellung.

Onpage und Offpage SEO

Mit diesen simplen Veränderungen ist im Grunde jedes WordPress Theme gut ausgestattet und grundlegend konfiguriert um von Suchmaschinen gut gefunden, verstanden und bewertet zu werden. Komplexere Probleme mit Suchmaschinen tauchen erst auf wenn Webseiten es mit hunderten und tausenden verschiedener Inhalten zu tun haben. Für den normalen WordPress Blog reicht das alles hier aus, um mit jeder anderen Seite in den Google Suchergebnissen konkurrieren zu können.

Alles was man auf der eigenen Seite erledigen kann, wird Onpage SEO genannt. Hat Google es bei einer Suchanfrage mit zwei Seiten zu tun, die im Onpage Bereich gleich gut optimiert worden sind und deren Inhalte vielversprechend ausschauen, gewinnt allerdings die Seite, der Google bereits mehr vertraut, was von der Vernetzung im Web abhängig ist. Diese externen Faktoren zu beeinflussen wir Offpage SEO genannt, ist nicht CMS spezifisch und sprengt hier leider den Rahmen. Grundlegend kann man aber sagen, das Du qualitativ hochwertige Links zu deiner Webseite brauchst, um von den Suchmaschinen ernst genommen zu werden. Und der Schlüssel zu guten Links, ist gute Inhalte zu schreiben.

Autor

Ich lebe in Hamburg und arbeite seit 2006 im Bereich Internet Marketing, Webentwicklung und Design. Insbesondere liegt mein Fokus dabei auf der Optimierung von Webseiten für Suchmaschinen und Branding im sogenannten Web 2.0 durch die Teilnahme an den Sozialen Netzwerken sowie der Blogosphäre.

Website besuchen

und so weiter...

Kommentare

  • Carsten - am 28. Mai 2010 - Antworten

    Hi, danke für die asuführliche Anleitung…
    Ich wundere mich nur über einen Punkt:

    Und zwar habe ich erst seit Kurzem Webspace der mod_rewrite unterstützt und wollte nun bei einem ersten kleinen Projekt die URLs so einstellen, wie Du es beschrieben hast. Allerdings bin ich dann über einen Eintrag gestolpert, der dieses Variante als ungünstig bezeichnet…”is strongly not recommended for performance reasons” steht hier:
    http://codex.wordpress.org/Using_Permalinks#Using_only_.25postname.25
    Was meinst du dazu? Ich habe vor ein paar Monaten auch irgendwo in einem Blog mal was dazu gelesen, finde den Artikel allerdings nicht mehr.
    Gruß

  • Alex Sczakiel - am 30. Mai 2010 - Antworten

    @Carsten Aus Performance Gründen sollte man, laut dem Codex, eine Permalink Struktur nicht mit %postname%, %category%, %tag% oder %author% starten. Performance würde in diesem Zusammenhang bedeuten, das der Server mehr Ressourcen dafür benötigt (warum auch immer das so sein sollte). Im Selben Codex Dokument geben sie aber selbst Beispiele für Strukturen die mit den genannten Tags starten, daher weiß ich nicht so recht was ich davon halten soll.

    Wem das Sorge bereitet, kann ja seine Permalinkstruktur mal ändern, ausschalten usw. und dabei die Ladezeit der Webseite messen. Wenn die Zeit ok ist, scheint der Server das gut handhaben zu können, dann sehe ich da keinerlei Problem. Hab allerdings auch nie drauf geachtet und werde das demnächst selbst mal testen und messen. Wenn ich Ergebnisse dazu habe, schreib ich hier noch mal.

    By the Way: Die Ladezeit von Webseiten ist ein offiziell bestätigtes Ranking-Kriterium auf Google.

  • Markus - am 1. Juni 2010 - Antworten

    Mit CSS können die Titel in der Sidebar auch ohne HTML H1-H6 Überschriften auf die gleiche Größe gebracht werden …Auch andere, für den Inhalt des Textes, unrelevante HTML Überschriften, wie beispielsweise ‘Einen Kommantar schreiben’ in der comment.php, sollten mit dieser Methode angepasst werden.

    Also damit kann ich mich nicht anfreunden. Wenn Du aus einer Überschrift wie “Schreibe einen Kommentar” einen normalen Text machst und diesen dann via CSS “optisch” dennnoch als Headline darstellst ist das nach meinem Ermessen der falsche Weg (Stichworte Semantik und Zugänglichkeit). Entweder hat ein Text eine Bedeutung z.B. als Überchrift, dann sollte dies im HTML auch so ausgezeichnet werden, oder er hat diese Bedeutung nicht – dannn wird sie auch nicht via CSS zugewiesen wo nur der sehende Nutzer etwas damit anfangen kann.

    Unabhängig davon ist die Auszeichnung mit H5 oder H6 semantisch von geringer Bedeutung und Google kommt doch gut damit klar. Meine Empfehlung: Strukturierende Überschriften weiterhin nutzen und auch die Sidebarbereiche mit Headlines separieren. Erstens nimmt man so jeden Nutzer mit ins Boot und schaut nicht nur nach der Optimierung für die Suma und zweitens sind die Algorithmen zumind. in der Lage Strukturelles wie eine Sidebar trotz Headlines nicht in den Index aufzunehmen, es sei denn dort findet sich relevanter Inhalt …

    Ansonsten guter Artikel, die Sache mit dem Excerpt_RSS für die Description kannte ich noch nicht – seh aber gerade dass das sogar im Codex steht – Danke für den Tipp!

    Grüße, Markus

  • Alex Sczakiel - am 3. Juni 2010 - Antworten

    @Markus Überschriften machen für mich Sinn wenn sie im Text selbst als Auszeichnung verwendet werden, sie beschreiben den Text der dahinter folgt wie in einem Artikel auf einem Blatt Papier. Alles was nicht auf dem Papier ist, gehört für mich nicht zum Inhalt sondern zum Interface der Webseite. Nur den Inhalt will ich an Suchmaschinen und verschiedene Technologien wie RSS oder dritte Seiten kommunizieren, hier macht es Sinn HTML Überschriften zu verwenden, da so gezeigt werden kann, das es sich um eine Überschrift handelt, da CSS Daten hier verloren gehen.

    Sidebar und Kommentarfeld ist für mich aber kein Inhalt in dem Sinne mehr, hier stehen keine Texte die durch Überschriften beschrieben werden könnten. Manchmal will ich vielleicht nur eine H3 Überschrift in der Sidebar ‘simulieren’ manchmal will ich aber auch mit dem gleichen Code und einer anderen CSS Datei etwas völlig anderes damit machen, als es wie eine Überschrift im Text aussehen zu lassen, daher sehe ich in erster Linie keinen Grund dort H1-H6 zu verwenden.

    Sorry für die Diskussion, da kann ich nicht anders ;) Mal abhänig vom SEO, ist’s am Ende wahrscheinlich eh Geschmackssache des Developers, da nur im eigentlichen ‘Inhalt’ Semantik wirklich von Bedeutung ist. Nur meine Meinung.

    Oder das Pferd mal andersrum aufgezogen. Wenn du also Überschriften in der Sidebar oder im Kommentarfeld benutzt, könnte der Tipp auch sein, diese zu behalten, dann aber an deine Keywords anzupassen, anstatt sie zu entfernen. Man könnte hier auch für jede Unterseite einzigartige, dynamische Überschriften erzeugen beispielsweise ‘Einen Kommentar zum Thema XXX abgeben’ und dort den Title noch mal einfügen. Derartig kleine Spielereien haben erfahrungsgemäß schon manchmal nen kleinen Effekt auf’s Ranking, weil Google nicht ganz so gut darin ist zu verstehen was der Inhalt ist, wie man manchmal glaubt oder sie einen glauben machen wollen.

    Schöne Grüße

    PS: Deine Seite gefällt mir übrigens ausgesprochen gut, wenn ich das mal so sagen darf :)

  • Perun - am 6. Juni 2010 - Antworten

    Hallo,

    if(is_single() || is_page()) {

    kann man durch:

    if(is_singular()) {

    abkürzen. Und:

    if(is_category() || is_archive()) {

    durch:

    if(is_archive()) {

    abkürzen. Da is_tag(), is_category(), is_date() etc. Untermengen von is_archive() sind.

    Viele Grüße,
    Vlad

  • funkygog - am 21. Juni 2010 - Antworten

    Da habe ich ja scheinbar alles richtig gemacht.
    Den Bereich mit dem dublicate Content habe ich anderen Weg rum formuliert. Wenn “Seite” oder “Beitrag” dann follow sonst Finger weg.
    <?php if(is_home() || is_single() || is_page() ) {
    echo "”;
    } else {
    echo “”;
    } ?>

  • DerFriedrich - am 6. Oktober 2010 - Antworten

    Super Artikel und Anleitung! Ist im Einsatz und ich bedanke mich herzlich dafür!

    Beste Grüße
    Friedrich

  • Mika - am 2. November 2010 - Antworten

    Toller Artikel. Deswegen bist du einer unserer Web Snipetts.

    Viele Grüße Mika

  • jason - am 13. Januar 2011 - Antworten

    Danke! Das hat mir weitergeholfen mich von den Plugins zu trennen die nichtmal das gemacht haben was ich wollt! Einfach nur Keywords, Description und die Anweisungen index,noindex etc hinzufügen!

Trackbacks

Deine Meinung