Sehr kurze Auszug: PHP slug

Wer entwickelt, um WordPress weiß definitiv, das Wort Schnecke , in der Regel verwendet die Text-Strings, die keine Leerzeichen oder andere "seltsame" Zeichen darauf hinweisen können. In der Praxis eine freundliche URL-String kann, die innerhalb einer URL verwendet werden. Normalerweise ist die Umwandlung eines Strings in die Schnecke automatisch durch WordPress durchgeführt, wie der Titel eines Beitrags, zB "Dies ist ein Beitrag", um "so-und-a-post" umgewandelt wird. Die Transformation ist ähnlich dem der slug camelize oder camelcase Blick hier . Hier ist eine mögliche Implementierung in PHP:

1
2
3
$s ) { Funktion Wegschnecke ($ s) {
strtolower ( str_replace ( " " , "-" , preg_replace ( "/[^az A-Z0-9]/" , "" , $s ) ) ) ) ; return ( strtolower ( str_replace ("", "-", preg_replace ("/ [^ az A-Z0-9] /", "", $ s ))));
}

10 Kommentare: "Sehr kurze Auszug: PHP slug"

  1. 29. Mai 2009 Napolux :

    Durch die Art und Weise Ihre Funktion gibt "questounpost" und nicht "this-one-post" ...

    Eine Alternative zu Ihrer preg_replace (), die nicht entfernt die Räume werden konnte

    1
    "/[^a-zA-Z0-9\s]/" , "" , $s ) preg_replace ("/ [^ a-zA-Z0-9 \ s] /", "", $ s)

    (Verzeihen Sie mir, heute bin ich wählerisch)

  2. 29. Mai 2009 Napolux :

    Dies, indem genommen snipplr entfernt auch die doppelte Bindestriche.

    1
    2
    3
    4
    5
    6
    7
    $str ) Funktion Wegschnecke ($ str)
    {
    strtolower ( trim ( $str ) ) ; $ Str = strtolower ( trim ($ str));
    preg_replace ( '/[^a-z0-9-]/' , '-' , $str ) ; $ Str = preg_replace ('/ [^ a-z0-9-] /', '-', $ str);
    preg_replace ( '/-+/' , "-" , $str ) ; $ Str = preg_replace ('/-+/', "-", $ str);
    ; return $ str;
    }
  3. 29. Mai 2009 Napolux :

    Ich sehe nicht den Ersatz von Akzenten, wie ich sehe keine Sonderzeichen wie "& etc. ... Oder ist dies nur ein esempietto?

    Normalerweise verwende ich eine ähnliche Funktion wie die Weitergabe str_replace () 2-Array mit den Zeichen "hässlich" und die Berücksichtigung "gut".

    Zum Beispiel ersetzt das Apostroph mit "" (leere Zeichenkette), während zum Beispiel die Mutter mit dem Armaturenbrett ...

  4. 29. Mai 2009 Giovambattista Fazioli :

    @ Napolux: Ich habe den Raum in den Filter, jetzt habe ich korrigiert. Allerdings ist dies nur ein Beispiel von Filter zu umgehen, in dem Sinne, dass die Akzente, zum Beispiel, wie Sie sich erinnern, werden nicht ersetzt, sondern einfach eliminiert. : P

  5. 29. Mai 2009 Giovambattista Fazioli :

    @ Napolux: sowie Sonderzeichen, natürlich ... (siehe ampersen, Zeichen der Dur / Moll-, Darm-, etc ...)

  6. 29. Mai 2009 Undolog.com "Sehr kurze Auszug: PHP slug :

    [...] Quelle: Undolog.com "Sehr kurze Auszug: PHP slug Verwandte Artikel: Sehr kurze Auszug: PHP isset_post () | [...]

  7. 29. Mai 2009 IWriteAboutIT :

    Hallo Leute,
    Unnötig zu, dass gerade gestern war ich für eine ähnliche Lösung suchen zu sagen.
    Vielen Dank für das Timing ..
    Tom

  8. 29. Mai 2009 IWriteAboutIT :

    Aber wenn Sie wollen eine vollständige und endgültige?

  9. 29. Mai 2009 Napolux :

    @ IWriteAboutIT:

    Aber wenn Sie wollen eine vollständige und endgültige?

    Nun ... Sie können Filter alle Zeichen außer die, die Sie bei der Rettung interessiert sind. Wir schaffen zwei Arrays mit allen Fällen und fahren Sie dann mit str_replace ();

  10. 24. März 2011 Giovambattista Fazioli :

    @ IWriteAboutIT:

    Aber wenn Sie wollen eine vollständige und endgültige?

    Sie können die native Funktion von WordPress:

    1
    2
    / / Einfügen der Zeichenfolge in $ "Satz" zu desinfizierende
    sanitize_title_with_dashes ( $stringa ) ; $ Slug = sanitize_title_with_dashes ($ string);

Hinterlasse einen Kommentar

XHTML TAG PERMIT: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERTION CODE:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Stoppen SOPA