Creating SEO friendly URL
2016-03-14

2018-04-22 12:30:20 PHP, SEO, EN

Deutsche Version: String SEO optimieren (creating SEO friendly URL)

This is about how to create a SEO Friendly URL from a string with a PHP Function

The function seofy () below creates a friendly version of a string. Umlauts and other characters not contained in the ASCII character set are either reduced to the basic form equivalent (e. g.: é becomes e and ú becomes u) or completely converted (e. g.: ß becomes ss and ü becomes ue).

This succeeds on the one hand because the php function preg_replace performs the replacement by means of unicode - i. e. Unicode Regular Expressions - and on the other hand because an approximate translation is attempted by means of php function iconv with option TRANSLIT.

Quote php. net about iconv and TRANSLIT:

If you append the character string //TRANSLIT to out_charset, transliteration is activated. This means that a character that cannot be displayed in the target character set can be approximated with one or more similar-looking characters.[…]

Function

<?php 
/**
 * prepares a string optimized for SEO
 * @param string $sString 
 * @return string $sString SEO optimized 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;
}

Examples

<?php 

echo seofy('Straßenfest in München');          // => strassenfest-in-muenchen
echo seofy('José Ignacio López de Arriortúa'); // => jose-ignacio-lopez-de-arriortua

Links


Diese Website verwendet Cookies, um Ihnen den bestmöglichen Service zu gewährleisten. Weiterführende Informationen finden Sie in unserer Datenschutzerklärung. Klicken Sie in die nachfolgende Checkbox um Cookies zu akzeptieren. Bestätigen Sie anschließend durch Klick auf "Speichern".