SEO url comme Wordpress avec une redirection htaccess

SEO url comme Wordpress avec une redirection htaccess

2019-05-09 Niveau: Avancé

Avoir des urls qui sont SEO "friendly" c'est toujours une bonne idée , Wordpress par example le fait presque automatiquement il s'agit de configurer nos permaliens.

Mais qu'arrive t'il si on utilise pas Wordpress? Et bien nous devons le faire nous même et je vais vous montrer comment.

 

Personne n'aime voir des liens comme ceci :

https://finao.ca/blog-page.php?blog_Id=14

 

Google n'aime absolument pas ça non plus car pour lui ça veut rien dire donc c'est très mauvais pour le SEO (les recherches Google)

On voit bien qu'il s'agit d'un GET en php sur la page blog-page.php, le ? sépare la page de la variable blog_Id et =14 représente bien sur l'ID du post en question .

 

Google aime beaucoup plus les urls comme :

https://finao.ca/blogue/wordpress/installation-theme-salient/14

 

Dans cette url on voit la catégorie "Wordpress" et la sous catégorie "installation-theme-salient" et bien sur pour finir l'ID du post en question "14" car il nous faut bien une référence pour aller chercher le bon acticle dans la base de données.

 

Je vais vous montrer comment réaliser ça s'en trop forcer !

 

Ouvrez le fichier htaccess avec Atom https://atom.io/ ou un éditeur de texte peu importe, si ce fichier n'existe pas à la racine de votre hébergement web créer le. 

 

Premièrement assurez vous de mettre ceci tout en haut du fichier. Ça permet la magie en question. :

RewriteEngine On

 

 

Prenons en un facile pour commencer , disons que je veux être en mesure que mes liens pointent vers https://www.finao.ca/blogue au lieu de https://www.finao.ca/blog.php ça serait un bon début non ? Alors dans mon fichier htaccess je vais écrire :

RewriteEngine On
RewriteRule ^blogue.*$ blog.php [L]

 

Donc la je peux pointer mes liens vers https://www.finao.ca/blogue

mais il y a un peu plus compliqué comme les acticles , ils ont des catégories, des sous catégories et des ID ... ouf mais comment faire ?

Voici comment :

 

Bien sur on ne connait pas d'avance tous les liens qu'il y a ou qu'il y aura dans son blogue donc nous devons rendre le code assez intelligent pour ça.

RewriteRule ^blogue/([\-a-z0-9]+)/([\-a-z0-9]+)/([0-9]+)$ blog-page.php?blog_Id=$3 [L]

 

Je vous explique le code, dans mon blogue il y a une catégorie, une sous catégorie et l'ID du post, nous avons donc 3 éléments (pour votre blogue il y en aura peut-être plus mais vous allez comprendre le principe et l'appliquer à votre situation)

 

Regardons l'image suivante :

deux-parties

Il y a 2 parties dans cette ligne de code , la première représente le résultat voulu et la deuxième l'url actuelle. À noter le $3 à la fin représente la position de l'ID dans la première partie.

 

Voyons voir un peu plus loin :

htaccess

 

Comme on peut voir avec les flèches il y a 3 parties exactement comme mes trois éléments en rouge c'est la catégorie, en bleu la sous catégorie et en 3ime partie l'ID de l'article.

 

([\-a-z0-9]+) représente des chiffres et des lettres en minuscules

([0-9]+) représente des chiffres seulement (c'est pour l'ID donc c'est parfait)

 

Donc avec ce code dans mon fichier htaccess je peux effectivement aller chercher l'article avec l'ID 14 en autant que je respecte la règle du code écrit dans le htaccess soit pour mon example une catégorie , une sous catégorie et un id : /wordpress/installation-theme-salient/14.

 

Oui si on écrit /dsadadas/dasdasdasd/14 ça va fonctionner quand même et aller chercher le bon acticle 14 car on suit la règle du htaccess et le GET en php lui n'a besoin que de l'id à la fin soit le 14.

 

Rendu la il vous faut bâtir vos liens en conséquence et le tour est joué.

RewriteEngine On

RewriteRule ^blogue/([\-a-z0-9]+)$ blog.php?categorie=$1 [L]
RewriteRule ^blogue/([\-a-z0-9]+)/([\-a-z0-9]+)/([0-9]+)$ blog-page.php?blog_Id=$3 [L]

 

 


Laissez nous un commentaire