Remplacement Mots Wordpress

Remplacer un mot par un autre automatiquement

Cette fonction est particulièrement utile si vous changez de nom de domaine et que vous êtes comme moi trop feignant pour remplacer tous les liens internes à la main mais cela peut aussi s’avérer intéressant pour les installateurs de sites qui voudraient ajouter des liens vers un (ou plusieurs) site dès qu’un mot est écrit. On peut par exemple imaginer qu’a chaque fois que le mot wordpress est écrit dans un article ou dans une page, un lien vers wordpress.fr s’affichera automatiquement.

Le code pour remplacer un mot par un autre

function replace_text($text) {
	ici le code pour remplacer le texte
	return $text;
}
add_filter('the_content', 'replace_text');

Le code est relativement simple et peut être adapté très facilement à vos besoins. Pour ce mini tuto, je vous donne deux exemples assez classiques que vous pourrez personnalisez et que vous devrez insérer à la place de la phrase « ici le code … ». Ce code est a insérer dans le fichier functions.php de votre thème et comme d’habitude, je vous conseille de créer un thème enfant sous peine de voir cette modification partir en fumée lors des mises à jour.

Remplacer un mot précis par un autre

Dans cet exemple, le mot wordpress (uniquement avec cette graphie, WordPress, wordPress, etc ne seront pas modifiés) qui sera remplacé automatiquement par WordPress avec les majuscules et en gras grâce aux balises strong.

$text = str_replace('wordpress', '<strong>WordPress</strong>', $text);

Notez que vous pouvez également remplacer des identifiants passés dans des liens ce qui est pratique dans le cas d’un changement de compte.

$text = str_replace('id?4500', 'id?7845', $text);

Remplacer un mot par un lien

Dans cet autre exemple, la fonction remplace automatiquement le mot amazon par un lien vers le site d’amazon.fr grâce aux balises de liens.

$text = str_replace('amazon', '<a href="http://www.amazon.fr">Amazon</a>', $text);

Ajoutez autant de remplacement que vous voulez dans la fonction

Vous pouvez ajouter autant de règles que vous le souhaitez, vous devez simplement vous assure qu’elles soient avant la ligne return $text;

function replace_text($text) {
$text = str_replace('wordpress', '<strong>WordPress</strong>', $text);
$text = str_replace('id?4500', 'id?7845', $text);
$text = str_replace('amazon', '<a href="http://www.amazon.fr">Amazon</a>', $text);
	
return $text;
}
add_filter('the_content', 'replace_text');

Conclusion

Vous pouvez ainsi modifier très facilement quelques mots du contenu de votre site, ajouter des css ou des liens spécifiques bien plus rapidement qu’en reprenant une par une toutes vos pages. Toutefois, et j’insiste beaucoup dessus, cette fonction est à manier avec précaution car en l’utilisant, vous changerez l’affichage du mot sur toutes les pages de votre site ce qui n’est pas toujours le but désiré.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *