Mise à jour WordPress 4.x

Si comme moi, vous n’avez pas pris le temps (ou pas l’envie) de configurer un serveur FTP pour la gestion et l’évolution de votre site WordPress (ou si tout simplement vous voulez voir plus loin), voici les commandes nécessaires en direct sur le serveur pour passer en version 4.

Environnement

Cette mise à jour a été testée sur Centos 6.5 32bits avec WordPress 3.7.1 vers WordPress 4.2.2, ne faites pas cette mise à jour si vous avez plus de 2 versions majeures d’écart.

Documentation officielle

http://codex.wordpress.org/Upgrading_WordPress_Extended

Préparation

Tout d’abord, assurez-vous d’avoir fait une sauvegarde de votre site par copier/coller du répertoire racine ou par récupération du contenu (FTP, SSH, etc), ainsi qu’un dump de votre base de données (via phpMyAdmin ou mysqldump par exemple). Des extensions sont assez pratiques comme UpdraftPlus ou BackWPup Free pour faire tout ça à notre place.

Généralement le dossier racine se situe au niveau de /var/www/html/dossier_racine/.

Pour faire une copie du répertoire racine:

cp -R dossier_racine/ dossier_racine_bak

Ensuite, il faut désactiver toutes les extensions afin d’éviter les problèmes éventuelles d’incompatibilité, ceci se fait pas l’interface Web dans la partie Extensions.

Enfin, se placer dans un dossier pour télécharger la mise à jour:

cd /usr/local/src (exemple)
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
rm -f latest.tar.gz

Un dossier wordpress vient d’être créé.

Nettoyage de votre site

Se placer dans le dossier racine:

cd dossier_racine

Supprimer les 3 dossiers suivants:

rm -rf wp-admin

Le dossier suivant peut-être complètement supprimé sauf s’il contient un dossier languages avec vos fichiers de langue. Si c’est le cas, il est préférable de les copier avant de supprimer le dossier wp-includes ou directement de les déplacer dans wp-content/languages/:

rm -rf wp-includes
rm -rf wp-content/plugins/widgets

Supprimer tous les fichiers suivants:

rm -f readme.html xmlrpc.php license.txt wp-activate.php wp-blog-header.php wp-comments-post.php wp-config-sample.php wp-cron.php wp-links-opml.php wp-load.php wp-login.php wp-mail.php wp-settings.php wp-signup.php wp-trackback.php

Mise à jour du dossier racine

Se placer dans le dossier contenant la mise à jour téléchargée lors de la préparation afin de copier les fichiers/dossiers ci-dessous dans le dossier racine:

cd /usr/local/src/wordpress (exemple)

Copier tous les fichiers suivants:

cp license.txt readme.html wp-activate.php wp-blog-header.php wp-comments-post.php wp-cron.php wp-links-opml.php wp-load.php wp-login.php wp-mail.php wp-settings.php wp-signup.php wp-trackback.php xmlrpc.php /dossier_racine/

Copier les 2 dossiers suivants:

cp -R wp-admin /dossier_racine/
cp -R wp-includes /dossier_racine/

Puis copier le contenu du dossier de contenu en remplaçant les fichiers existants:

cp -Rf wp-content/* /dossier_racine/wp-content/

Se placer dans le dossier racine:

cd /dossier_racine

Supprimer le dossier de mise à jour:

rm -rf /usr/local/src/wordpress

Finaliser la mise à jour

Connectez-vous à votre site WordPress et suivez les instructions afin de mettre à jour la base de données.

Et voilà 😉