In diesem Tutorial erfahren Sie Schritt für Schritt, wie Sie mithilfe einer maßgeschneiderten PHP-Klasse aus einem Hauptkeyword mehrere sogenannte Vertipper-Keywords erzeugen können. Diese Vertipper-Keywords können Sie beispielsweise in Ihrem Content Management System (CMS) einbinden, um mehr Vielfalt in Ihre Keyword-Datenbank zu bringen.
Warum Vertipper-Keywords sinnvoll sein können
Häufig geben Webmaster für einzelne Webseiten Keywords oder Suchbegriffe an, um in den Suchmaschinen besser gefunden zu werden. Doch manchmal ist es schwierig, ausreichend viele eindeutige Keywords zusammenzutragen. Hier kann es helfen, auf Vertipper zurückzugreifen.
Vertipper-Keywords werden vor allem dann interessant, wenn Ihre Besucher häufig bestimmte Buchstaben vertauschen oder Tippfehler machen. Auch wenn Google & Co. heutzutage sehr gut darin sind, Rechtschreibfehler zu erkennen und zu korrigieren, können gezielte Vertipper dennoch hilfreich sein, um mehr Traffic zu generieren oder um zusätzliche Keywords zu testen.
Überblick über die PHP-Klasse keywords
Nachfolgend sehen Sie eine PHP-Klasse, die zufällige Tippfehler (Vertipper) in ein Wort einbaut. Die vertipper_buchstabe()
-Methode tauscht auf Basis eines definierten Tastaturlayouts einzelne Zeichen durch benachbarte Tasten aus. Die vertipper()
-Methode kombiniert dann das Hauptkeyword mit diesen Vertippern und erzeugt ein neues Wort mit möglichen Tippfehlern.
Sourcecode der PHP-Klasse:
<?php
/**
* Klasse keywords
*
* Diese Klasse dient dazu, aus einem Hauptkeyword
* ein oder mehrere Vertipper zu erzeugen.
*
* @author Nico Schubert
* @copyright Copyright © 2011, Nico Schubert
*/
class keywords {
/**
* Die Funktion vertipper_buchstabe() wandelt
* einen fehlerfreien Buchstaben in einen
* zufälligen Vertipper um.
*
* @param string $buchstabe
* @return string
*/
public function vertipper_buchstabe($buchstabe) {
$tasten = array(
'q' => array('a','w'),
'w' => array('q','s','e'),
'e' => array('w','d','r'),
'r' => array('e','f','t'),
't' => array('r','g','z'),
'z' => array('t','h','u'),
'u' => array('z','j','i'),
'i' => array('u','k','o'),
'o' => array('i','l','p'),
'p' => array('o'),
'a' => array('q','s','y'),
's' => array('a','w','d','x'),
'd' => array('s','e','f','c'),
'f' => array('d','r','g','v'),
'g' => array('f','t','h','b'),
'h' => array('g','z','j','n'),
'j' => array('h','u','k','m'),
'k' => array('j','i','l'),
'l' => array('k'),
'y' => array('a','s','x'),
'x' => array('y','s','d','c'),
'c' => array('x','d','f','v'),
'v' => array('c','f','g','b'),
'b' => array('v','g','h','n'),
'n' => array('b','h','j','m'),
'm' => array('m','j','k')
);
/* Wenn der Buchstabe nicht im Array definiert ist wird er unverändert zurückgegeben. */
if (!isset($tasten[$buchstabe])) {
return $buchstabe;
} else {
/* Aus den Nachbarbuchstaben wird einer zufällig ausgewählt */
$count = count($tasten[$buchstabe]) - 1;
$zufall = rand(0, $count);
return $tasten[$buchstabe][$zufall];
}
}
/**
* Die Funktion vertipper() erzeugt ein neues Keyword,
* das ein oder mehrere zufällige Tippfehler enthält.
*
* @param string $keyword
* @param int $max_vertipper
* @return string
*/
public function vertipper($keyword, $max_vertipper = 2) {
/* Zerlegt den String in seine einzelnen Zeichen */
preg_match_all("/./", $keyword, $matches);
$array = $matches[0];
/* Länge des Keywords minus 1, um Index-Bereich abzubilden */
$lange = strlen($keyword) - 1;
/* Wählt zufällig Stellen aus, an denen Tippfehler eingebaut werden */
for ($index = 0; $index < $max_vertipper; $index++) {
$z[] = rand(0, $lange);
}
$ausgabe = '';
$buchstaben_zeichen = 0;
foreach ($array as $buchstabe) {
/* Leerzeichen werden nicht verändert */
if ($buchstabe != ' ' && in_array($buchstaben_zeichen, $z)) {
$ausgabe .= $this->vertipper_buchstabe($buchstabe);
} else {
$ausgabe .= $buchstabe;
}
$buchstaben_zeichen++;
}
return $ausgabe;
}
}
?>
Beispiel für die Verwendung der Klasse
Um die Klasse zu verwenden, können Sie beispielsweise folgendermaßen vorgehen:
<?php
$keyword = 'Beispiel Keyword';
$k = new keywords();
echo '<b>Hauptkeyword:</b><br>';
echo $keyword . '<br><br>';
echo '<b>Vertipper Keyword:</b><br>';
echo $k->vertipper($keyword, 1);
?>
Ausgabe:
Hauptkeyword:
Beispiel Keyword
Vertipper Keyword:
Beispiel Keaword
Was passiert im Code?
$keyword = 'Beispiel Keyword';
Hier wird das Keyword (oder mehrere Keywords) definiert, das/ die Sie vertippen lassen möchten.
$k = new keywords();
Damit wird eine neue Instanz der Klasse keywords
erstellt.
$k->vertipper($keyword, 1);
Hier rufen wir die Methode vertipper()
auf, übergeben ihr das Hauptkeyword und legen fest, wie viele Zufalls-Tippfehler generiert werden sollen (hier: 1).
Die Methode liefert einen String zurück, in dem an einer oder mehreren zufälligen Stellen ein Buchstabe durch einen verwandten Buchstaben aus dem definierten Tastatur-Array ersetzt wurde. Das Ergebnis ist Ihr Vertipper-Keyword.
Mehrwert für Ihr Content Management
Mit dieser Logik können Sie beliebig viele Vertipper-Keywords erzeugen, um beispielsweise:
- mehr Variationen Ihrer Keywords für unterschiedliche Seitenabschnitte zu erhalten,
- neue Keywords für Tests und Experimente zu generieren,
- dem Suchverhalten Ihrer Besucher genauer zu entsprechen (z.B. häufige Tippfehler abzufangen).
Wichtige Hinweise
Auch wenn Vertipper-Keywords Ihnen eine gewisse Flexibilität bringen, sollten Sie diese nicht wahllos einsetzen. Google erkennt übermäßigen Spam und irrelevante Keywords relativ schnell. Verwenden Sie diese Methode also mit Bedacht, beispielsweise um Ihren bestehenden Keyword-Pool sinnvoll zu erweitern.
Wenn Sie mehrere unterschiedliche Vertipper-Keywords generieren möchten, können Sie die vertipper()
-Methode mehrfach aufrufen. Um sicherzustellen, dass die erzeugten Vertipper-Keywords sich stark genug unterscheiden, kann die PHP-Funktion similar_text()
eingesetzt werden, um die Ähnlichkeit zwischen den generierten Varianten zu überprüfen.
Fazit
Diese einfache PHP-Klasse zeigt, wie Sie ein Hauptkeyword in ein oder mehrere Vertipper-Keywords umwandeln können. Auf diese Weise lassen sich schnell zusätzliche Keywords generieren, um den Keyword-Pool einer Webseite zu bereichern. Achten Sie jedoch darauf, dass diese Technik nur eine Ergänzung zu einer umfassenden Keyword-Strategie sein sollte.
Sollten Sie Fragen oder Anregungen haben, nutzen Sie gerne das Supportforum, um sich mit anderen Nutzern auszutauschen.