Suche auf lima-city
-
in: Titel zur Rewrite URL umwandeln?
geschrieben von themen
Hallo
aus diesem oben hier habe ich jetzt eine Funktion gemacht title_to_slug()
zum Umschreiben von einem Artikel-Titel zu einem Slug (Name für Rewrite-URL)
// ---------------------------------------------------------------------- function title_to_slug ($string, $spacer='-', $lower=TRUE, $umlaute=FALSE) { // ------ Gross-/Klein- Schreibung ------ if (FALSE !== $lower) { $string = strtolower($string); } // ------ String in UTF-8 ------ if (mb_detect_encoding($string, 'UTF-8', true) === false) { $string = utf8_encode($string); } // ------ Umlaute in UTF-8 ------ $umlx = utf8_encode('äöüÄÖÜß'); // ------ Sonderzeichen entfernen ------ $string = preg_replace("/[^0-9a-z".$umlx."]/ius", $spacer, $string); // ------ Doppelte / mehrfache Spacer entfernen ------ $string = trim(preg_replace("/\$spacer{2,}/", $spacer, $string)); $string = trim($string, $spacer); // ------ Umlaute in zwei Buchstaben umschreiben ------ if (FALSE !== $umlaute) { $umlz = array( utf8_encode('ä'), utf8_encode('ö'), utf8_encode('ü'), utf8_encode('Ä'), utf8_encode('Ö'), utf8_encode('Ü'), utf8_encode('ß') ); $rplz = array( 'ae', 'oe', 'ue', 'AE', 'OE', 'UE', 'ss' ); $string = str_replace($umlz,$rplz,$string); } // ------------------------ return $string; } // ----------------------------------------------------------------------
was noch fehlt ist die maximale Länge von dem, was raus kommt ...
... im Ergebnis die Anzahl der Zeichen begrenzen / zuschneiden
Dazu evtl. noch ein Argument / Parameter im Funktionsaufruf $maxlength
und entsprechend den String zu-schneiden ... aufpassen beii UTF-8 ... mb_
dabei ist die Frage, ob den Titel im Wort abschneiden oder nicht ?!
oder kenn jemand andere / bessere "Title to Slug" PHP Funktion
damit man aus einer Überschrift eine Rewrite-URL machen kann ?!
danke.