Slug-funktion för svenska tecken
En slug är några ord som beskriver en webbsida. Slug är vanligtvis en URL-vänlig version av sidans titel, alltså något som sökmotorer gillar bättre än en “konstig” URL som http://www.minsida.se/sida.php?id=45. Exempelvis, om sidans titel är “Timrå IK är dom bästa!!” så skulle en slug-URL till detta kunna vara http://www.minsida.se/timra-ik-ar-dom-basta
De slug-funktioner i php som jag hittat på nätet har inte haft något stöd för svenska tecken (åäö) så jag var tvungen att skriva en egen sådan function. Om någon kan förbättra den så skicka in er förbättrade version. Hur som haver här är den:
function slug($string)
{
$unPretty = array(’/å/’,'/ä/’,'/ö/’,'/ü/’, ‘/Å/’, ‘/Ä/’, ‘/Ö/’, ‘/Ü/’,'/é/’);
$pretty = array(’a',’a', ‘o’, ‘u’, ‘A’, ‘A’, ‘O’, ‘U’,'e’);
$string = preg_replace($unPretty, $pretty, $string); // convert swedish characters
$string = preg_replace( ‘/[^a-zA-Z0-9- ]/’, ”,$string); // replace non-characters
$string = str_replace(” “, “-”, $string); // replace spaces by dashes
$string = strtolower($string); // Make it lowercase
return $string;
}
lördag 22 mars, 2008 kl. 5:16 f m
Inte har väll wordpress slug stöd för svenska tecken? Vart/hur grejjar jag det med hjälp av din tjusiga kod?
tisdag 25 mars, 2008 kl. 11:35 f m
Jag tror att WordPress skapar sina slug’ar i funktionen sanitize_title_with_dashes. Så kolla där.