Ceci est une ancienne révision du document !



WordPress

WordPress est le CMS le plus utilisé du monde. En 2018 il représente presque un tiers des sites Internet !

C'est un projet né en 2003, ce qui est ancien pour une technologie du Web.

Cause et conséquence de cette gigantesque communauté : il propose une quantité sidérante d'extensions qui étendent ses fonctionnalités au delà du raisonnable (plus de 54000 plugins sur le dépôt officiel en 2018).

Il ne faut pas confondre WordPress.com qui est une plateforme de blog commerciale gérée par Automattic, et WordPress, le CMS dont il est question ici et dont le site officiel est fr.wordpress.org.
Le site officiel propose 2 documentations concernant l'installation de WordPress : une succincte, l'autre plus complète.
La plupart des hébergeurs web proposent une installation de WordPress simplifiée ("en 1 clic").
WordPress étant une solution destinée à être déployée sur un serveur, toutes les manipulations dont nous traiterons ici se feront en ligne de commande.

Prérequis

Pour installer WordPress vous aurez besoin d'un serveur HTTP, de PHP, et d'un serveur de base de données MySQL (MySQL ou MariaDB).

Sur un hébergement web géré par l'hébergeur, ces prérequis devraient déjà être en place, donc toutes ces étapes devraient être inutiles.

N'hésitez pas à contacter le support de l'hébergeur si ce n'est pas le cas.

Apache est le serveur HTTP le plus couramment utilisé, et cette configuration (en conjonction avec MySQL et PHP) s'appelle une pile LAMP.

Donc pour installer Apache, PHP et MySQL ou MariaDB, suivez cette documentation. Vous pouvez aussi choisir d'installer Xampp et vous référer à la section Installation avec Xampp pour la suite des opérations, mais ce n'est pas une méthode recommandée.

Une fois la pile LAMP installée, on active le module mod_rewrite, dont a aussi besoin WordPress :

sudo a2enmod rewrite

Nous allons ensuite créer un hôte virtuel pour WordPress, dont la racine sera /var/www/wordpress :

sudo nano /etc/apache2/sites-available/wordpress.conf

Ce qui ouvre un fichier dans lequel nous allons coller :

<VirtualHost *:80>
        ServerName wordpress
        DocumentRoot /var/www/wordpress
        <Directory /var/www/wordpress>
                AllowOverride all
                Require all granted
        </Directory>
        ErrorLog /var/log/apache2/error.wordpress.log
        CustomLog /var/log/apache2/access.wordpress.log combined
</VirtualHost>

Si un nom de domaine pointe sur le serveur, on l'indique à la place de wordpress pour la directive ServerName.
(Ctrl+X puis O pour quitter en sauvegardant)

Finalement, on active l'hôte virtuel et on recharge la configuration d'Apache :

sudo a2ensite wordpress
sudo systemctl reload apache2

Si on n'a pas spécifié de vrai nom de domaine, on édite le fichier /etc/hosts côté client afin de renseigner l'IP du serveur pour le domaine wordpress :

127.0.0.1	wordpress
Si votre serveur est sur le Web, pensez à sécuriser l'accès au site en particulier en forçant HTTPS.

Installation ​de WordPress ​

Copie des fichiers

Tout d'​abord téléchargeons la dernière version de WordPress :

wget https://fr.wordpress.org/wordpress-latest-fr_FR.zip

Ensuite nous allons extraire le contenu du zip à la racine de notre hôte virtuel (/var/www/wordpress dans cet exemple), et y créer les fichiers .htaccess et wp-config.php :

sudo unzip wordpress-latest-fr_FR.zip -d /var/www
sudo touch /var/www/wordpress/.htaccess /var/www/wordpress/wp-config.php

Attribuons des permissions correctes aux fichiers et répertoires :

sudo chown $USER:www-data /var/www/wordpress -R
sudo find /var/www/wordpress -type d -exec chmod 750 {} \;
sudo find /var/www/wordpress -type f -exec chmod 640 {} \;
sudo find /var/www/wordpress/wp-content -type d -exec chmod 770 {} \;
sudo find /var/www/wordpress/wp-content /var/www/wordpress/.htaccess /var/www/wordpress/wp-config.php -type f -exec chmod 660 {} \;

Création de la base de données

Pour créer la base de données qu'utilisera WordPress, le plus simple est de se connecter avec le client MySQL

sudo mysql -u root

On arrive alors sur la console SQL sur laquelle nous allons entrer ces commandes :

CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO "WordPress"@"localhost" IDENTIFIED BY "mot_de_passe";
FLUSH PRIVILEGES;
EXIT

Il faut remplacer mot_de_passe par un vrai mot de passe complexe qu'on note pour plus tard.

On vient de créer la base de donnée wordpress à laquelle l'utilisateur WordPress aura accès.

Installation via l'interface web

WordPress devrait alors être accessible à l'​adresse http://wordpress/, et cette adresse nous redirige sur une interface qui nous permet de finaliser l'installation.

Cliquez sur C'est parti ! et renseignez les différents champs :

  • Nom de la base de données : wordpress
  • Identifiant : WordPress
  • Mot de passe : le mot de passe qu'on a noté à l'étape précédente (lors de la création de la base de donnée et de l'utilisateur WordPress)
  • Adresse de la base de données : localhost
  • Préfixe des tables : wp_

Installation avec Xampp

  1. Installez rapidement un serveur de type Lamp en utilisant Xampp.
  2. Téléchargez Wordpress dans votre dossier personnel. ( ou version anglaise).
  3. Créez un répertoire d'accueil pour votre site WordPress dans votre répertoire personnel. Attention, le nom du répertoire de décompression sera celui que vous taperez dans la barre d'adresse de votre navigateur pour accéder à votre site en local.
  4. Décompressez-y l'archive wordpress téléchargée. Pour la suite de cet article, nous conviendront que le contenu de l'archive wordpress a été décompressé dans "/home/VotreUserName/wp_monsiteinternet"
  5. Le sites accessibles via votre serveur local sont ceux que vous copierez dans /opt/lampp/htdocs. Il faut d'abord rendre ce dossier accessible en lecture et en écriture avec ces commandes:
    sudo chmod -R 775 /opt/lampp/htdocs
  6. Assurez-vous que votre serveur démarre automatiquement via les commandes suivantes:
    sudo ln -s /opt/lampp/lampp /etc/rc2.d/S99lampp
    sudo ln -s /opt/lampp/lampp /etc/rc1.d/K02lampp
  7. Lancez les étapes de sécurisation du serveur lampp et retenez les identifiants et mots de passe des différents services:
    sudo /opt/lampp/lampp security
  8. Créez la base de données MySQL qui hébergera votre site wordpress avec phpmyadmin. Attention, le nom de la base sera à renseigner lors de l'initialisation de Wordpress. Si vous n'arrivez pas à ouvrir l'interface de phpmyadmin, redémarrez votre ordinateur pour que l'ensemble des services de votre serveur démarrent et relancez l'interface de phpmyadmin.
  9. Créez un compte utilisateur différent de "root" pour la base de données du site définie dans MySQL.
  10. Donnez l'ensemble des droits d'accès à cet utilisateur.
  11. Créez un lien symbolique pour accéder à votre site web tout en le conservant dans votre répertoire home:
    sudo ln -s /home/VotreUserName/wp_monsiteinternet /opt/lampp/htdocs
  12. Ouvrez votre navigateur et tapez l'adresse: http://localhost/wp_monsiteinternet.
  13. Suivez les instructions pour configurer wordpress.

Extensions

Pour installer des extensions, depuis l'administration allez sur ExtensionAjouter : vous aurez accès à toutes les extensions de la base de données officielle de WordPress.

Nous n'allons évidemment pas dresser la liste exhaustive des plus de 50000 extensions disponibles, mais certaines d'entre elles sont incontournables :

  • WP Super Cache : confère à WordPress une fonctionnalité d'optimisation indispensable pour accélérer l'affichage du site, et alléger la charge de travail côté serveur.
  • WP Force SSL : force l'utilisation de HTTPS, ce qui évite que le contenu web et les variables d'identifications des utilisateurs transitent en clair sur Internet.
  • Polylang : incontournable pour les sites multilingues.
La qualité des extensions de WordPress est très variable. De plus, chacune est potentiellement source de lenteurs et de failles de sécurités.

N'installez que des extensions qui vous sont indispensables et en lesquelles vous avez confiance.

Thèmes

Pour installer un thème, depuis l'administration allez sur ApparenceAjouter de nouveaux thèmes : vous aurez accès à tous les thèmes de la base de données officielle de WordPress.

Contenu éditorial

FIXME

Mot de passe administrateur perdu

Vous pouvez modifier le mot de passe de l'administrateur principal avec la commande suivante :

UPDATE wp_users SET user_pass=MD5('MOTDEPASSE') WHERE user_login = 'admin';

Contributeurs : krodelabestiole, Psychederic

  • utilisateurs/krodelabestiole/brouillon/wordpress.1521026985.txt.gz
  • Dernière modification: Le 14/03/2018, 12:29
  • par krodelabestiole