Le mode multi-site introduit sous WordPress 3.0 vous permet de créer des sites à la chaîne. Malheureusement, un slash blog /blog vient s’ajouter en fin du domaine principal ce qui n’a rien d’attractif. Une manipulation via le functions.php nous permettra de l’enlever.
Ce tutoriel va réutiliser le code source du plugin Remove /blog slug for WPMU. La grosse différence part du principe qu’un plugin d’une dizaine de lignes pourra être directement inséré dans le fichier functions.php de WordPress.
A l’aide d’un client FTP, localisez le fichier functions.php présent dans le dossier de votre thème sous /wp-content/themes/NOM_DU_THEME/
Vous pouvez également passer par le menu Apparence puis Editeur de votre administration WordPress. A partir de la liste des fichiers sur la droite de votre écran, cliquez sur functions.php.
Rajoutez ensuite les lignes suivantes en début ou en fin de fichier tout en veillant à respecter l’ouverture et la fermeture des balises PHP. Sinon, insérez le contenu de ces balises de la ligne 3 à 15 à l’intérieur d’autres balises PHP déjà en place.
Le placement de bout de code n’étant jamais évident, je vous invite à regarder la vidéo ci-dessous qui explique la manipulation avec le thème par défaut de WordPress, à savoir TwentyTen.
<?php
add_filter("pre_update_option_category_base","cc_remove_blog_slug");
add_filter("pre_update_option_tag_base","cc_remove_blog_slug");
add_filter("pre_update_option_permalink_structure","cc_remove_blog_slug");
function cc_remove_blog_slug($tag_cat_permalink){
if(!preg_match("/^\/blog\//",$tag_cat_permalink))
return $tag_cat_permalink;
$new_permalink=preg_replace ("/^\/blog\//","/",$tag_cat_permalink );
return $new_permalink;
}
?>
Ceci fait, sauvegardez votre fichier puis rendez-vous dans le menu Réglages puis Permaliens.

Cette procédure permet de forcer la mise à jour des permaliens de WordPress
Là, changez une première fois la structure en place par celle de votre choix tout en retenant la précédente. Cliquez donc sur Enregistrer les modifications.
Revalidez ensuite la structure définitive en n’oubliant pas de cliquer à nouveau sur Enregistrer les modifications.
Déconnectez-vous de votre administration WordPress puis retournez sur votre site. Les URLs sont désormais libérés de la présence du /blog.
Vous disposez dorénavant d’une structure d’URL plus propre pour votre gestion multi-site avec WordPress 3.0. La présence du mot-clé blog appartient au passé et ce serait vraiment bien si les prochaines de version de WordPress pouvaient s’en passer…
Crédits photo : Maria Reyes-McDavis
Podcast: Télécharger (121.8MB)







Salut,
Chez moi, ça marche bien pour les url d’articles, mais pas pour les url de catégories apparemment …
Est-ce la cas aussi pour toi ?
merci d’avance
je viens de comprendre,
l’incompatibilité venait du plugin wordpress SEO by YOAST lorsque la fonction « Enlever le répertoire de base de la catégorie (habituellement /category/) du lien de la catégorie. » est cochée ..
mmmhh . l’ideal serait evidemment de pouvoir cumuler les 2 (supprimer « blog » ET « category » …)
une idée ?
Il me semble que techniquement parlant il faut détourner une fonction native de WordPress. Essaies avec ceci : http://wordpress.org/extend/plugins/wp-no-category-base/
c’est la solution a laquelle je suis arrivé oui …
ton code + le wp-no-category-base fonctionne simultanement … impec
merci Aurélien
Merci Rémy et Aurélien pour vos solutions !
Effectivement, le plugin wordpress SEO by YOAST en était la cause.
Merci pour ce petit tuto vidéo, très pratique ! C’est dommage que WordPress ne permette pas de supprimer le slug blog, même si cela peut entrainer des problèmes au niveau des permaliens et des multi-sites.
Bonjour, je viens de tomber sur votre page et je trouve ça super ce morceau de code.
Par contre j’ai un problème avec Seo by Yoast, au niveau du fil d’ariane, il conserve le /blog. Est ce que quelqu’un saurait m’aiguiller pour corriger cela? car du fait, ça me redirige vers la page 404 lorsque je clique dans le fil d’ariane
Par avance merci!
Merci beaucoup pour ce tuto qui même daté est encore bien utile !!
bonjour,
je viens de faire une connerie : j’ai supprimé l’extension /blog directement dans réglages.
Resultat, plus rien ne fonctionne, lorsque j’essaye de me loguer sur mon backoffice, il m’affiche une erreur 404.
Auriez vous une solution ?
Essayez de corriger les URLs avec ce tutoriel.
Bonjour,
Comment ça ce passe lors de la mise à jour du thème ?
Ce n’est pas une solution très pérenne sur le long terme, non ?
Une idée pour améliorer ça ?