ProcessWire: SEO mit Meta Tags

Hallo freundlicher Leser aus der Nachbarschaft,

ich finde es schön, dass dich mein Geschreibsel interessiert. Aber noch schöner fände ich es, wenn du diesen Blog unterstützen würdest, zum Beispiel könntest du deinen AdBlocker für meinen Blog deaktivieren. Das würde mir schon viel bedeuten und zum Erhalt dieses Blogs beitragen.

Mit freundlichen Grüßen
J. Wiese

Suchmaschinenoptimierung (SEO) ist ein Thema, dass man nicht vernachlässigen sollte. Da Suchmaschinen den Inhalt von <meta>-Tags mitunter mehr oder weniger berücksichtigen und anzeigen, zeige ich im Fogenden, wie man die gängigen Meta-Tags in ProcessWire einbinden kann. Dazu erstellt man zuerst die notwendigen Felder und fügt diese dann bei den Templates ein. Zuzüglich müssen diese dann noch im <head>-Tag des Templates eingefügt werden. Das ganze gibt es auch hier als benutzerfreundliches Modul, nur unterstützt es noch nicht nofollow und noindex und lässt sich weniger individualisieren.

Meta-Tag Überischt

Hier hat Google eine Liste mit Meta-Tags veröffentlicht, die der Googlebot versteht. Einige daraus werden wir exemplarisch in ProcessWire integrieren. Zusätzlich wird noch der Meta-Tag für die Keywords erstellt, da einige andere Suchmaschinen diesen weiterhin benutzten.

Die Liste der Meta-Eigenschaften sieht, dann wie folgt aus:

  1. <meta name="description" content="Beschreibung der Seite" />
  2. <meta name="keywords" content="keyword1,keyword2,...">
  3. <meta name="google" content="notranslate" />
  4. <meta name="robots" content="noindex,nofollow,nosnippet" />

Damit sind die wichtigsten Optimierungen dabei, diese sollten aber immer auf den eigenen Bedarf angepasst werden. So braucht man notranslate nur, wenn man keine eigenen Übersetzungen anbietet.

Felder erstellen

Name Typ Label Erweiterte Einstellungen
meta_tab FieldsetTabOpen    
meta_description Text oder TextLanguage*   Beschreibung| Eingabe->Maximum Length = 157
(Details->Sprachunterstützung/Leere Felder = Bleibt Leer)*
meta_keywords Text oder TextLanguage* Keywords  
meta_notranslate Checkbox NoTranslate? Eingabe->Spaltenbreite = 15%
meta_nosnippet Checkbox NoSnippet? Eingabe->Spaltenbreite = 15%
meta_nofollow Checkbox NoFollow? Eingabe->Spaltenbreite = 15%
meta_noindex Checkbox NoIndex? Eingabe->Spaltenbreite = 15%

*Gilt nur für mehrsprachige Installationen.

Felder in die Templates einfügen

Nun fügt man dem gewünschten Template die vorher erstellten Felder als ein Block hinzu. Wobei zu beachten ist, dass meta_tab am Anfang und meta_tab_END am Ende stehen, damit alles dazwischen ein eigenes Fenster bekommt.

Der Block sollte dann ungefähr so aussehen:

...
meta_tab
meta_description
meta_keywords
meta_notranslate
meta_nosnippet
meta_nofollow
meta_noindex
meta_tab_END
...

<head>-Tag bearbeiten

Im Template muss nun nur noch der <head>-Tag editiert werden. Dort werden dann die Eingaben bei jeder Seite eingetragen. Das sollte ungefähr folgendermaßen aussehen.

<html> 
...
    <?php if ($page->meta_description) : ?><meta name="description" content="<?php echo $page->meta_description; ?>"/><?php endif; ?>
    <?php if ($page->meta_keywords) : ?><meta name="keywords" content="<?php echo $page->meta_keywords; ?>"/><?php endif; ?>
    <?php if ($page->meta_nofollow || $page->meta_noindex) : ?><meta name="robots" content="<?php
		if ($page->meta_nofollow && $page->meta_noindex) {
			echo "noindex, nofollow";
		} elseif ( $page->meta_nofollow ) {
			echo "nofollow";
		} elseif ($page->meta_noindex) {
			echo "noindex";
		}	?>"/><?php endif; ?>
    <?php if ($page->meta_notranslate) : ?><meta name="google" content="notranslate" /><?php endif; ?>
...
</html>

Diese Zeilen sorgen dafür, dass die eingestellten Werte mit der Webseite ausgeliefert werden. Zusätzlich gilt, wenn Felder nicht ausgefüllt sind, werden deren Tags auch nicht ausgegeben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.