Plugins SEO pour WordPress

Wordpress plugins directoryJe pense que WordPress (WP) est la solution de Blog. Sa communauté est toujours grandissante,elle intègre les derniers développements SEO, le nombre de plugins et de thèmes développés est en constante augmentation…

Le référencement de vos articles de Blog WP s’effectue quasiment en temps réel alors qu’un site web conventionnel constatera le passage des bots de manière beaucoup moins fréquente (tous les 15 jours).

Pour améliorer l’indexation ou optimiser votre WP pour les moteurs de recherche, vous devrez installer quelques plugins WP.

Installer des plugins sous WP est hyper-simple. Uploadez le répertoire du plugin décompressé dans votre répertoire WP /wp-content/plugins. Puis activez et cnofigurez le plugin dans votre interface admin WP.

Choisissez les plugins WP à installer avec soin. En effet, certains plugins moins suivis pourraient générer un conflit ou un mauvais fonctionnement après un upgrade de WP, par exemple. Chaque plugin précise avec quelle version de WP il est compatible. En choisissant des plugins populaires, vous éviterez les problèmes de compatibilité. Je vous conseille de rechercher les plugins nécessaires dans le WordPress Plugins Directory (plus de 8.000 plugins disponibles) :

Permaliens

Chacun de vos articles WP reçoit une url unique appelée permalien. Il est généré automatiquement et vous pouvez modifier ce lien manuellement au besoin.

Vous trouverez aussi une page de paramétrage des Permaliens dans l’interface admin WP. Vous devriez utiliser une structure personnalisée pour les url automatiques que WP créera pour chacun de vos articles de blog :

/%category%/%postname%/

créera le permalien suivant : http://www.od2dev.be/php5/polymorphisme : “php5″ étant le titre de la catégorie et “polymorphisme” le titre de votre article. Si votre article a déjà été publié et qu’il est déjà indexé par Google (c’est certainement le cas), et si vous changez votre stratégie de permalien, vos anciennes url d’articles mèneront à un broken link. La solution est dans ce cas précis d’utiliser des redirections 301 à l’aide d’un fichier .htaccess.

Plugin SEO (Search Engine Optimization) : All in One SEO Pack

Optimiser votre blog pour un meilleur ranking auprès des moteurs de recherche vous demande :

  • de nommer vos articles de blog avec minutie,
  • de donner à chacun des articles de votre blog, à chacune de vos pages, un titre et une description uniques
  • d’utiliser les permaliens
  • d’installer et activer un plugin comme All in One SEO Pack

J’ai choisi le plugin All in One SEO Pack du développeur WP Hallsofmontezuma.

Downloadez simplement l’archive du plugin, décompressez-la et uploadez le répertoire décompressé dans to /wp-content/plugins/. Ensuite, allez dans l’interface admin desplugins de WP et activez All in One SEO Pack. Une fois activé, All in One SEO apparaît dans votre Menu Paramètres WP. Sélectionnez-le et configurez-le :

Les tags Titre de Homepage et Description de Homepage doivent être complétés avec les informations que vous désirez voir apparaître dans Google.

Je n’utilise pas le Keywords tag puisque la plupart des moteurs de recherche n’y prêtent plus attention.

Post title format, Page title format et Category title format sons suceptibles d’être indexés dans les moteurs. Paramétrez donc ces champs respectivement avec le post title, page title et category title. Certains thèmes y ajoutent le titre de votre Blog mais si vos articles sont uniques (ce qu’ils devraient être), vous devriez leur donner un titre unique sans les mots-clefs génériques tels que le titre de votre blog.

Le plugin Google Sitemap Generator

Un sitemap XML est un fichier qui devrait se trouver quelque part dans votre répertoire de site web et qui peut être envoyé à Google à travers les Webmastertools, par exemple, et qui aidera Google à mapper votre site. La génération d’un tel fichier peut être automatisé sous WP grâce au Google XML Sitemap Generator (WordPress Plugin). Il est aussi facile à installer et configurer que le plugin ci-dessus.

Texte Alternatif – Titres de liens

Edit alternate text field for images in WordPressVous pourriez obtenir des hits de Google Images si vous preniez la peine de compléter le champ “texte alternatif” des images. Insérez une image dans votre article, cliquez sur le bouton “éditer” de l’image et allez dans l’onglet “Paramètres Avancés”, puis remplissez le champ “Texte alternatif”.

La même fenêtre de paramètres vous permet de paramétrer le lien sur l’image. N’oubliez pas d’y ajouter un titre.

Webliographie :

All in One SEO Pack (WordPress Plugin)

Google Sitemap Generator (WordPress Plugin)

SEO for Blogs (YouTube video)

WordPress SEO Plugins

Wordpress plugins directory

I believe WordPress (WP) is the Blog solution. Its community is constantly growing, it integrates the latest SEO developments, the number of plugins and themes developed is constantly increasing…

Your WP Blog posts indexation by Google is a real-time indexation which is a real improvement compared to the time which is necessary to update indexation of common websites (15 days).

In order to improve indexation or optimize your WP for search engines, you’ll need to install some WP plugins.

Installing plugins in WP is (dead-)easy. You simply have to upload the extracted plugin directory into your WP /wp-content/plugins directory. Then you’ll activate and configure the plugin in your WP admin interface.

Take a close look at what plugin you choose before installing. Indeed, some of them may generate a conflict after upgrading WP, for example. Each plugin states some requirements concerning the WP version with which it is compatible. By choosing state-of-the-art plugins, you’ll have less compatibility problems. I advise you to look for the necessary plugins in the WordPress Plugins Directory (more than 8,000 available plugins) :

 

 

Permalinks

Each of your post in WP receives a unique url which is called permalink. It is generated automatically and you can modify it to suit your requirements.

You’ll also find a Permalinks settings page in your WP Admin interface. You should use a custom structure for the automatic url that WP creates for each of your blog posts.

/%category%/%postname%/

will create the following permalink : http://www.od2dev.be/php5/polymorphism : “php5″ being the category title and “polymorphism” the title of your post. If your blog post has already been published and is listed in Google (which is surely the case), and if you change your permalinks strategy, your old blog post url will lead to a broken link. So the solution in that case is to use 301 redirects through an .htaccess file.

Plugin for SEO (Search Engine Optimization) : All in One SEO Pack

Optimizing your blog for better search engine ranking requires you :

  • to name your blog posts thoroughly,
  • to give each blog post or page a unique title and description
  • to use permalinks
  • to install and activate a plugin like All in One SEO Pack

I chose the plugin All in One SEO Pack from WP developer Hallsofmontezuma.

Simply download the plugin archive, extract it and upload the plugin directory to /wp-content/plugins/. Then go to your WP plugins admin interface and simply activate All in One SEO Pack. Once it has been activated, All in One SEO appears in your WP Settings Menu. Select it and configure it :

All in One SEO Pack - settings

The home title and home description tags need to be completed with the pieces of information you want Google to list.

I don’t use keywords since most search engines don’t pay attention to it anymore.

Post title format, Page title format and Category title format are likely to rank in search results so you’d better set them to the post title, page title and category title. Some themes add the blog title to it but if your individual posts are unique (which they should be), give them a unique title without generic keywords such as your blog title.

Google Sitemap Generator Plugin

An XML sitemap is a file that should be stored somewhere in your website directory, that can be submitted to Google through the Webmastertools, for example, and that will help Google mapping your website. This can be automated in WP thanks to the Google XML Sitemap Generator (WordPress Plugin). It is as easy to install and configure as the above plugin.

Alternate text – Link titles

Edit alternate text field for images in WordPressYou could trigger hits from Google Images if you complete the alternate text field for images. So, insert an image in your post, click on the Edit button on the image and go to the “Advanced settings tag”, then fill in the alternate text field.

The same image settings tab also allows you to modify link settings. If you want to put a link on your image, don’t forget to edit the Advanced Link Settings and set a title to your link.

 

Webliography :

All in One SEO Pack (WordPress Plugin)

Google Sitemap Generator (WordPress Plugin)

SEO for Blogs (YouTube video)

SEO en 2 mots

Je tiens à remercier tout particulièrement Mehdi Laanait pour ses conseils avisés en SEO (Search Engine Optimization, référencement naturel, optimisation d’un site pour les moteurs de recherche)

Les Smart Urls ou urls optimisées pour les moteurs de recherche permettent aux robots comme GoogleBot d’identifier les mots-clefs dans l’url de la page visitée. Le pagerank d’une page Web (le résultat numérique que Google donne à une page Web après analyse) en est amélioré. Ces moteurs parcourent les urls, les balises title, description, (la balise keywords est désormais passablement ignorée) et le contenu de la page pour le référencement.

Les bases

L’inclusion de réflexes SEO dans le développement Web nécessite

  • des changements au niveau du fichier Apache .htaccess
  • des changements dans les urls que le développeur donne à chaque page

Construire des Urls pertinentes pour un référencement optimisé

Si un site Web n’est pas optimisé pour les moteurs de recherche, les pages du site sont générées par PHP et ont la forme suivante :

http://www.myphotography.net/index.php?cat=1&scat=32

et afficheront les articles associés à la catégorie 1 (disons “photographie au cerf-volant”) et à la sous-catégorie 32 (“Cerf-volants Rokkaku”). Les problème est que l’url ne donne ni à l’internaute ou au robot aucune indication quant au contenu de l’article.

Pour des raisons de référencement, le développeur veillera à changer les urls qui mènent au différents contenus. Les nouvelles urls générées partout dans le site auront la forme :

http://www.myphotography.net/cerf-volant/rokkaku

Le sous-répertoire “cerf-vloant” n’existe pas sur le serveur Web. Il s’agit d’un nom de répertoire virtuel généré par PHP pour optimiser le référencement en incluant les mots-clefs importants dans l’url même. La seule chose que le développeur devra prévoir est la manière dont le serveur Apache se comportera face à ce style d’url. La solution s’appelle “url rewriting”.

Apache .htaccess : url rewriting : .htaccess file

L’URL rewriting est l’art de transformer des urls générées par PHP faisant référence à des nom de répertoires et de fichiers virtuels en urls physiques existant effectivement sur le serveur d’hébergement.

Le fichier .htaccess d’Apache permet au développeur d’activer le moteur de réécriture qui analysera la requête et la transformera en adresse plausible pour éviter une erreur 404.

Ce fichier .htaccess contiendra les lignes suivantes

Options +FollowSymlinks -MultiViews #Line 1 : indique à Apache de suivre les liens symboliques

RewriteEngine on #Line 2 : RewriteEngine on active le module mod_rewrite d’Apache

RewriteRule ^([a-z]+)/([a-z]+)$ index.php?cat=$1&scat=$2 [L] #Line 3 : règle de ré-écriture

Exemple de règle de ré-écriture .htaccess

Considérons la règle suivante :
RewriteRule ^([a-z]+)/([a-z]+)$ index.php?cat=$1&scat=$2 [L]

Apache cherche la chaîne de caractères située entre ^ et $

Apache cherche une chaîne décomposée en

  • un nombre quelconque de lettres minuscules de a à z. Cette chaîne sera stockée dans la variable $1
  • suivi d’un slash /
  • suivi d’un nombre quelconque de lettres minuscules de a à z. Cette chaîne sera stockée dans la variable $2

La seconde partie de la règle de réécriture est le fichier php qui sera chargé par Apache en lieu et place de l’url demandée :

index.php?cat=$1&scat=$2 [L] : le flag [L] permet d’indiquer à Apache d’arrêter le traitement sans se préoccuper des éventuelles règles de réécritures suivantes puisque la règle courante aiguille l’internaute vers le bon fichier.

Conclusion

L’Url rewriting est un passage obligé pour aider Google à mieux référencer les pages d’un site web. Les back links (liens vers votre site), la sélection de vos mots-clefs, les sitemaps, les tags html (h1, strong, alt,…),… contribuent tout autant à un référencement digne de ce nom.

Une fois que le développeur a compris l’importance des mots-clefs à tous les niveaux du site, qu’il laisse les robots faire leur travail…

Voici quelques références non-wikipedia :

Source Google
Apache mod_rewrite doc
Webconfs / outils SEO
Website Grader

SEO in a nutshell

I really want to thank Mehdi LAANAIT for his suggestions concerning SEO (Search Engine Optimization).

Smart urls or search engine optimized urls allow bots like Google to identify keywords in urls. Website ranking then gets an added value. Parsing urls, title tags, description tags (keywords tags are now deprecated) and the body of a webpage allow search engines to rank web pages.

The basics

Including SEO concerns inside Web development requires

  • Apache .htaccess changes
  • urls changes

Building SEO-friendly URLs

Let’s assume a PHP website has to be re-written. Dynamic pages were formerly generated by PHP with the form :

http://www.myphotography.net/index.php?cat=1&scat=32

to display articles belonging to category 1 (let’s say “kite photography”) and to subcategory 32 (“Rokkaku kites”). The problem with that url is that it does not tell the visitor or the bot about the content of the article. For SEO concerns, it should.

New urls will have to be generated throughout the website and be of the form :

http://www.myphotography.net/kites/rokkaku

The subdirectory “kites” doesn’t exist on the web server. It is only a virtual directory name generated by PHP for the sake of better SEO. The only thing the developer still has to manage is the way Apache server will treat the request to

Apache .htaccess : url rewriting

URL rewriting is the art of making php-generated urls human readable.

Apache’s .htaccess file will allow the developer to activate the Rewrite Engine which will analyse the url request and transform it into what’s necessary for the website not to end on a 404 error page.

This file will contain the following lines :

Options +FollowSymlinks -MultiViews #Line 1 : tells Apache to follow symbolic links

RewriteEngine on #Line 2 : activates RewriteEngine (Apache mod_rewrite module)

RewriteRule ^([a-z]+)/([a-z]+)$ index.php?cat=$1&scat=$2 [L] #Line 3 : rewriting rule

.htaccess Rewriting rule example

Let’s consider the following line :
RewriteRule ^([a-z]+)/([a-z]+)$ index.php?cat=$1&scat=$2 [L]

Apache will look for the string of characters between ^ et $ in the url.

This string is divided into :

  • a number of lower case characters from a to z. This string will be stored in variable $1
  • followed by a slash /
  • followed by a number of lower case characters from a to z.This string is stored in variable $2

The second part of the rewriting rule is the php file Apache will load if the rewriting rule is to be applied :

index.php?cat=$1&scat=$2 [L] : flag [L] tells Apache to stop treatment without checking the following rewriting rules since the current rule drives the client to the right file.

Conclusion

Url rewriting is part of the solution to help google ranking your pages better. Back links, keyword selection, sitemaps, html tags (h1, strong, alt,…),… also contribute to a better ranking.

Once the developer has understood keywords are the key to success… let bots do their job…

Here are some non-wikipedia references :

Google source
Apache mod_rewrite doc
Webconfs / SEO tools
Website Grader

SEO et domaines

Les noms de domaine ne sont pas toujours très efficaces termes de référencement. On a parfois cherché à les raccourcir à outrance.

Enregistrer un nombre de noms de domaine pour le même projet

 

Tout registrar digne de ce nom facturera entre 7 et 15 euros par nom de domaine. Le développeur peut suggérer 2 noms de domaine au client :

  • un nom de domaine pratique, facile à retenir pour un accès rapide (à inscrire sur les cartes de visite, la publicité,…). Ce nom de domaine contient souvent des abréviations, un acronyme,…
  • et un autre nom de domaine contenant les mots-clefs associés à l’activité liée au site Web.

Si plusieurs domaines pointent vers le même site Web, le développeur doit changer le fichier Apache .htaccess pour rediriger automatiquement et de manière transparente tous les noms de domaine vers le nom de domaine principal.

Exemple de redirection du domaine

Les développeurs enregistrent régulièrement 2 noms de domaine : un avec et un sans www. Imaginez les 2 noms de domaine suivants :

www.od2dev.be et od2dev.be

Ces 2 noms de domaine devraient pointer vers le même nom de domaine principal (c-à-d : www.od2dev.be)

Changez votre fichier .htaccess avec les lignes suivantes :

Options +FollowSymlinks -MultiViews
#ErrorDocument 404 /seo/404.php
RewriteEngine on
rewritecond %{http_host} ^bulluc.be [nc]
rewriterule ^(.*)$ http://www.bulluc.be/$1 [r=301,nc]

 

Options +FollowSymlinks -MultiViews #Ligne 1 demande à Apache de suivre les liens symboliques

RewriteEngine on #Ligne 2 actiove le moteur Rewrite d’Apache (module mod_rewrite)

rewritecond %{http_host} ^od2dev.be [nc] #Ligne 3 : la condition de réécriture vérifie si la réécriture doit avoir lieu => si http_host (le host name courant) est od2dev.be. [NC] flag est utilisé pour rendre la condition insensible à la casse

rewriterule ^(.*)$ http://www.od2dev.be/$1 [r=301,nc] #Ligne4 Apache envoie un en-tête 301 de redirection à www.od2dev.be. La règle de réécriture s’assure que le chemin de la requête est enoyé également par l’expression régulière (.*) qui est envoyée à http://www.od2dev.be grâce à la variable $1

Le temps a de l’importance

Une recherche rapide Whois indiquera au développeur si un nom de domaine est disponible ou non. Enregistrer un nom de domaine peut être fait pour une année ou plus. Ce critère de temps est utilisé par l’algorithme Google pour le calcul du pagerank : un domaine réservé pour plusieurs années bénéficiera d’un capital confiance supérieur à un nom de domaine réservé pour une année seulement.

SEO and domains

Domain names are often less human readable than expected since the developer usually tries to make it as short as possible.

Register a number of domain names for the same project

Any registrar worth their salt will charge between 7 and 15 euros per domain name. The developer can suggest 2 domain names to his customer :

  • one easy-to-remember domain name for quick access (to be printed on visiting cards, advertisements,…). This domain name often contains abbreviations, is an acronym,…
  • and another one containing relevant keywords regarding the activity related to the web site.

If several domain names point to the same website, be sure to change your Apache .htaccess file to auto-redirect all your domain names to the same principal domain.

Domain redirect example

Developers regularly register 2 domain names : one with and the second with no www. Imagine the 2 following domains :

www.od2dev.be and od2dev.be

Both should point to the same principal domain (i.e. www.od2dev.be)

Change your .htaccess file with the following lines :

Options +FollowSymlinks -MultiViews
#ErrorDocument 404 /seo/404.php
RewriteEngine on
rewritecond %{http_host} ^bulluc.be [nc]
rewriterule ^(.*)$ http://www.bulluc.be/$1 [r=301,nc]

Options +FollowSymlinks -MultiViews #Line 1 tells Apache to follow symbolic links

RewriteEngine on #Line 2 activates Apache Rewrite Engine (mod_rewrite module)

rewritecond %{http_host} ^od2dev.be [nc] #Line 3 rewrite condition checks if rewrite rule is to be applied => if http_host (current host name) is od2dev.be. [NC] flag is used to make the condition case insensitive

rewriterule ^(.*)$ http://www.od2dev.be/$1 [r=301,nc] #Line4 Apache sends a 301 redirect header to www.od2dev.be. The rewrite rule ensures the path is sent as well with regex (.*) that is sent to http://www.od2dev.be thanks to the variable $1

Time matters

A quick Whois lookup tells the developer if the requested domain name is available or not. Registering a domain name can be done for one year or more. This time criteria is used in the Google algorithm for page ranking since a domain name that will last longer will be considered to be more trustworthy.