String SEO optimieren (creating SEO friendly URL)
2016-03-14

PHP,SEO,DE

Die u.g. Funktion seofy() erzeugt aus einem String eine SEO freundliche Version. Es werden Umlaute und andere nicht im ASCII Zeichensatz enthaltenen Buchstaben entweder auf das Grundform Äquivalent reduziert (z.B.: aus é wird e und aus ú wid u) oder komplett umschrieben (z.B.: aus ß wird ss und aus ü wird ue).

Dies gelingt zum Einen da initial die php Funktion preg_replace die Ersetzung mittels unicode - also Unicode Regular Expressions - vornimmt und zum Anderen weil mittels php Funktion iconv mit Option TRANSLIT eine annähernde Übersetzung versucht wird.

Zitat php.net zu iconv und TRANSLIT:

Wenn Sie die Zeichenkette //TRANSLIT an out_charset anhängen, wird die Transliteration aktiviert. Das bedeutet, dass ein Zeichen, das im Zielzeichensatz nicht dargestellt werden kann mit einem oder mehreren ähnlich aussehenden Zeichen annähernd dargestellt werden kann.[…]

Beispiele

  • Straßenfest in München strassenfest-in-muenchen
  • José Ignacio López de Arriortúa jose-ignacio-lopez-de-arriortua
<?php /**
 * bereitet einen String SEO optimiert auf
 *
 * @param String $string 
 * @return String $string SEO optimierter String
 */
function seofy ($sString = '')
{
    $sString = preg_replace('/[^\\pL\d_]+/u', '-', $sString);
    $sString = trim($sString, "-");
    $sString = iconv('utf-8', "us-ascii//TRANSLIT", $sString);
    $sString = strtolower($sString);
    $sString = preg_replace('/[^-a-z0-9_]+/', '', $sString);

    return $sString;
}

Links


Comment++

E-Mail Adresse wird nicht veröffentlicht.
E-mail address will not be published.