Je voudrais utiliser trait de soulignement dans mes permaliens au lieu de trait d'union.
Permalien actuel:
www.example.com/2013/01/hello-this-is-a-test-post/
Permalien souhaité
www.example.com/2013/01/hello_this_is_a_test_post/
J'ai essayé quelques solutions mentionnées ici dans stacexchange. Mais ils ne travaillaient pas.
Toscho m'a conseillé comme ça.
Google traite - en tant que séparateur de mots, mais pas _. Vous allez vous faire mal. :)
Il était vrai à 100%. Voici un article qui l'explique. J'ai donc abandonné l'idée.
Mais si vous cherchez toujours une solution, voici la réponse.
Répondu par cet utilisateur stackoverflow
Cherchez le fichier suivant:
wp-includes/formatting.php
Passez à la fonction
sanitize_title_with_dashes
. Vous trouverez cette section de code à l'intérieur:$title = strtolower($title); $title = preg_replace('/&.+?;/', '', $title); // kill entities $title = str_replace('.', '-', $title); $title = preg_replace('/[^%a-z0-9 _-]/', '', $title); $title = preg_replace('/\s+/', '-', $title); $title = preg_replace('|-+|', '-', $title); $title = trim($title, '-');
Remplacez tous les tirets/traits d'union (
-
) par des traits de soulignement (_
) comme suit:$title = strtolower($title); $title = preg_replace('/&.+?;/', '', $title); // kill entities $title = str_replace('.', '_', $title); $title = preg_replace('/[^%a-z0-9 _-]/', '', $title); $title = preg_replace('/\s+/', '_', $title); $title = preg_replace('|-+|', '_', $title); $title = trim($title, '_');
Notez que toutes les publications que vous avez créées avant cette modification et qui s'appuient sur la balise de structure
%postname%
, permalien, seront cassées.Dans ce cas, vous devrez revenir en arrière et republier ces publications pour que les tirets soient échangés contre les traits de soulignement. Ou écrivez vous-même un peu de SQL pour les remplacer.
Au départ, je l’avais fait, mais à chaque nouvelle mise à jour vers Wordpress, je devais modifier à nouveau manuellement le manuel, et j’ai donc créé ce plugin au cas où cela aiderait quelqu'un: http://wordpress.org/plugins/underscores-in-permalinks/