WordPress : (encore !) une nouvelle version et upgrade pas automatique

Las Vegas WordCamp logo tattooCertains de mes lecteurs le savent : WordPress est le CMS1 avec lequel j’ai acquis une certaine habileté pour construire des sites Web. Mes propres sites — Chroniques de l’Iboga, en ligne depuis 1999 et le présent e-Moleskine — me servant de laboratoire, de bac à sable pour l’apprentissage du développement de templates, du déploiement des nouvelles versions de WordPress, d’intégration de plugins… Le côté « bricolage » que j’aime bien, avec WordPress, en plus de ses qualités intrinsèques.

Je ne vous fais pas l’article sur WordPress, sa présence considérable sur le Web avec 27 millions de sites publiés, ses 55% de part « de marché » des CMS… Tout est dit dans l’infographie The Power of WordPress, de Tech King. Et puis l’idée n’est pas de tenter le troll du meilleur CMS ;-)

Ceci dit, le bricolage, ça va quand on a du temps libre, et si on peut éviter de « bricoler » sur les sites de ses clients, en production, les sites, ce ne serait pas plus mal. C’est pourquoi j’ai établi un calendrier de maintenance régulière incluant une revue complète du site, la sauvegarde complète, la mise à jour des plugins et le cas échéant du cœur (Core) de WordPress.

Et des mises à jour, il y en a !
30 novembre 2010, sortie de la 3.0.2
8 décembre 2010, la 3.0.3
Aujourd’hui (encore !) pour combler une faille de sécurité (on ne va pas se plaindre, hein ?), la 3.0.4
Et pendant ce temps, pointe son nez la 3.1… Vive l’innovation, ouais…
Sans parler des plugins qui, dans le meilleur des cas, suivent. Dans le pire des cas ils ne suivent pas et patatras, une fonction du site qui s’effondre. D’où l’intérêt de la simplicité et de la sobriété en plugins… c’est un autre sujet.

Automattic, la société de Matt Mullenweg, auteur et éditeur de WordPress a pris une excellente initiative, pour aider les webmaster qui ne tiennent pas à « bricoler » : les versions récentes de WordPress proposent une mise à jour simplement en cliquant sur un bouton. Pour les plugins et pour le cœur. Malheureusement, pour des raisons qui m’échappent en général, cette mise à jour automatique échoue presque toujours. Et le site d’être bloqué, inaccessible, au milieu de la procédure :-( Il faut alors d’urgence le débloquer. Par chance il n’y a rien de grave. Il « suffit » de se rendre en FTP dans le répertoire /wordpress du serveur et supprimer le fichier temporaire .maintenance. Ceci fait, le site refonctionne, mais la mise à jour reste à faire.

Update du 02/01/20111 : D’ailleurs, ça n’arrive pas qu’à moi (ouf!), Hélas, il est fréquent qu’une mise à jour “plante”, laissant votre site dans ce mode pour le moins désagréable lorsqu’il devient permanent. Bargeo nous donne de précieuses astuces pour maîtriser ce mode « Maintenance ».

C’est pourquoi j’ai renoncé à employer la mise à jour automatique et suis revenu aux méthodes primitives.
Mises à jour de WordPress
Ça fait plusieurs années maintenant que je pratique des upgrades WordPress2. J’en suis venu à utiliser le moins possible le FTP pour ce genre d’opération. Pourquoi ? Le FTP renvoie des erreurs type « nombre maximum de connexions atteint », « le dossier trucmuche existe déjà voulez-vous blabla ? » coche oui pour tous et, allez : re-« voulez-vous »… d’interminables épisodes de transfert interrompus on ne sait au milieu de quel répertoire etc. C’est stressant, c’est long, c’est pas fiable. C’est pourquoi je m’efforce d’apprendre les commandes minimum du Shell pour passer mes commandes sur le Terminal via SSH.
Encore faut-il avoir un accès SSH à son compte. Sur un serveur dédié que vous administrez, c’est OK. Ce n’est pas mon cas, je ne sais pas administrer un serveur. Sur un compte de serveur mutualisé, chez OVH, c’est possible sur les « grosses » offres. C’est ce que je prends maintenant pour mes clients (et mes sites).

Si ça peut vous rendre service3 je vous livre ma « méthode ».

1. Récupérer la dernière version de WordPress
vous obtenez une archive wordpress-xxx-fr_FR.zip

2. faire un export XML du contenu de votre site
Admin du site Outils > Exporter

3. faire une archive du répertoire wordpress
Terminal ssh > user@domaine.tld … passwd
ssh > cd répertoire_parent_de_votre_site
ssh > tar -cf repertoire.tar repertoire/
Downloader le .tar (et, ou non, le laisser en ligne) et l’archiver

4. en FTP (ou ssh) uploader le wordpress-xxx-fr_FR.zip dans le répertoire du site

5. décompresser le nouveau WordPress
Dans le répertoire du site
Terminal ssh > unzip wordpress-xxx-fr_FR.zip
On obtient un répertoire /wordpress
Entrer dans ce nouveau répertoire /wordpress

6. Déplacer les nouveaux fichiers dans le répertoire du site
En ssh
Supprimer /wordpress/wp-content TRÈS IMPORTANT sinon, il va écraser votre thème, uploads etc.
ssh > cd wordpress
ssh > rm -r wp-content/
Déplacer le contenu vers le répertoire du site
ssh > mv -f * ..

7. ménage
Supprimer le nouveau répertoire wordpress (qui doit être vide)
Supprimer wordpress-xxx-fr_FR.zip

8. tests

Vous vous souvenez que je ne suis pas informaticien ? Alors on ne rit pas, les nerds… Je suis preneur de vos conseils si vous avez mieux à me suggérer. Je serais vraiment preneur de faire marcher l’upgrade automatique…

Ajout du 18 janvier 2011 : le très complet Guide de mise à jour de WordPress, à partir de vieilles versions, de Lashon (aka Chamomor sur le forum support de wordpress-fr.net)

Ajout du 1er février 2011 : Louis, de AbriCoCotier.fr livre la méthode de mise à jour de WordPress en ligne de commande, « full terminal », sans FTP


  1. CMS : Content Management System, en anglais dans le texte 

  2. Comment j’ai mis à jour mon WordPress sans rien casser 

  3. et en écho au billet (bien plus concis) [WordPress] Attention mise à jour CRITIQUE vers 3.0.4!, de Nicolas FORCET 

Ce contenu a été publié dans e-business, avec comme mot(s)-clé(s) , , , . Vous pouvez le mettre en favoris avec ce permalien.