[WordPress] Nettoyer la base de données

Nettoyage-base-de-donnees-wordpressWordPress est un outil fabuleux utilisé par bon nombre de bloggeurs. Seulement voilà, si comme ce blog, vous recevez plus de 700 visites uniques par jour, que vous avez 614 articles et plus de 1650 commentaires, il faut parfois remettre un peu d'huile dans les engrenages pour que tout se passe sans accrochage ! Comment nettoyer la base de données wordpress et effacer les entrées inutiles ou obsolètes pour accélérer le bousin? Voici les commandes à entrer après vous être connecté à votre interface SQL (genre PHPMyAdmin):

1) Effacer les brouillons de vos posts WordPress

Le versionning c'est bien pratique lorsque vous écrivez un article long et que vous sauvegardez de temps en temps votre article en brouillon. Le code suivant efface les  brouillons et nettoie les tables wp_term_relationships et wp_postmeta. Entrez :

DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'

En lançant cette commande j'ai réussi à gagner 1,2Mo sur une base de 3Mo pas nettoyée depuis 6 mois ! A faire régulièrement donc.

2) Supprimer les commentaires spam de WordPress

Si, comme moi, vous les supprimez au fur et à mesure qu'Askimet les détecte, inutile de lancer cette commande. Sinon allez y:

DELETE FROM wp_comments WHERE comment_approved = 'spam';

3) Nettoyer les entrées de la table wp_commentmeta

On va ici nettoyer les entrées de la table wp_commentmeta n’ayant plus de relation dans la table des commentaires wp_comments. Ca correspond à tous les spams que vous avez effacé précédemment. Allez hop un coup de moulinette :

 

  1. DELETE FROM wp_commentmeta  
  2. WHERE comment_id NOT IN (  
  3. SELECT comment_id  
  4. FROM wp_comments)

Ensuite il faut supprimer toutes les entrées se référant à Akismet, elles aussi inutiles et très volumineuses. On fait tourner:

  1. DELETE FROM wp_commentmeta  
  2. WHERE meta_key LIKE "%akismet%"

Je suis pour ma part passé d'une table de 6Mo à… 100ko !!!

4) Bonus: supprimer les images non utilisées dans les posts WordPress

A chaque fois que vous uploadez une image pour un article, vous n'êtes pas sans savoir que WordPress en crée différentes versions à des tailles différentes. Très pratique mais aussi très gourmand en espace FTP. J'ai donc cherché la solution pour les effacer sans me taper le travail à la main. L'excellent plugin Delete Unused Image Files (DUI) se charge de cela pour vous.

Allez, je compte sur vous pour me dire en commentaire combien de place vous avez gagné et si vous avez d'autres astuces, allez y !

La lecture continue :

Partagez cet article si il vous a été utile :

Twitter Facebook Google Plus Linkedin

Tags: , , , ,

Commentaires : 2

  1. Ben 7 janvier 2011 - 17:36 Reply

    Merci pour l’astuce très utile ;-)

  2. Renaud 23 janvier 2011 - 15:44 Reply

    Très pratique, merci!

Laisser un commentaire

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