GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Premiers pas avec WP-CLI sur Ubuntu 15.10

Wordpress est l'un des meilleurs systèmes de gestion de contenu (CMS) open source basé sur PHP et MYSQL, c'est le système de blogging le plus populaire utilisé par plus de 23% des 10 millions de sites Web les plus importants. WordPress est installé sur plus de 60 millions de sites Web. Il existe de nombreux thèmes et plugins prêts à l'emploi disponibles pour WordPress. Vous pouvez utiliser WordPress comme plateforme de blogging, comme site de commerce électronique (avec WooCommerce) ou comme système CMS pour le site Web de votre entreprise. La première version de Wordpress a été publiée le 27 mai 2003 par Matt Mullenweg et Mike Little sous licence GPLv2.

WP-CLI est un ensemble d'outils de ligne de commande pour fournir une interface de ligne de commande pour gérer votre site WordPress. De zéro à Hero, vous pouvez l'utiliser pour créer votre site WordPress, gérer la base de données WP, modifier la description du site, installer et gérer des thèmes et des plugins, etc. C'est un truc très cool qui peut vous faire gagner beaucoup de temps. Vous pouvez mettre à jour des plugins, configurer des installations multisites et bien plus encore sans avoir à vous connecter à WordPress dans un navigateur Web, vous pouvez tout faire depuis le terminal shell/SSH.

Prérequis

  • Je vais utiliser Ubuntu 15.10 ici, mais les mêmes étapes devraient également être compatibles avec Debian 8.
  • Privilèges root

Que couvre ce tutoriel ?

  • Installation et configuration d'un serveur LEMP (Linux, Nginx, MySQL, PHP) de base.
  • Installation de WP-CLI
  • Installer Wordpress avec WP-CLI
  • Explication des commandes WP-CLI

Installation et configuration d'un serveur LEMP (Linux, Nginx, MySQL, PHP)

Dans ce tutoriel, j'utiliserai Nginx comme serveur Web, MySQL comme système de base de données et PHP-FPM pour exécuter WordPress. Nginx est l'un des serveurs Web les plus rapides, il offre des performances élevées avec une faible utilisation de la mémoire.

Alors commençons, installons d'abord tous les packages avec une seule commande "apt-get":

sudo apt-get install nginx mysql-server mysql-client php5 php5-fpm php5-mysql vim

REMARQUE : Vous serez invité à entrer le mot de passe MySQL , veuillez entrer un mot de passe sécurisé pour l'utilisateur racine MySQL et mémoriser ce mot de passe, nous en aurons besoin plus tard

Éditez maintenant le fichier php.ini dans le répertoire "/etc/php5/fpm/".

cd /etc/php5/fpm/
sudo vim php.ini

Veuillez décommenter la ligne 773 "cgi.fix_pathinfo" et changez la valeur en 0 :

cgi.fix_pathinfo=0

Enregistrez et quittez.

Configurez maintenant Nginx pour utiliser PHP-FPM, veuillez vous rendre dans le répertoire "/etc/nginx/sites-available/" et créez un nouveau fichier pour la configuration de l'hôte virtuel.

cd /etc/nginx/sites-available/
sudo vim wpcli.co

Collez la configuration ci-dessous :

server {
    listen 80;

#Web Directory
 root /home/vagrant/wordpress; index index.php index.html index.htm index.nginx-debian.html; server_name wpcli.co; location / { try_files $uri $uri/ =404; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass unix:/var/run/php5-fpm.sock; } #include h5bp/basic.conf; location ~ /\.ht { deny all; } }

Remplacez "wpcli.co" dans le paramètre server_name par le nom de domaine que votre installation WordPress doit utiliser.

Activez maintenant l'hôte virtuel en créant un lien symbolique vers le fichier wpcli.co dans le répertoire "/etc/nginx/sites-enabled/" :

sudo ln -s /etc/nginx/sites-available/wpcli.co /etc/nginx/sites-enabled/wpcli.co

Créez ensuite un nouveau répertoire avec le nom "/home/vagrant/wordpress/" et créez un nouveau fichier pour tester l'installation de PHP avec phpinfo(). Je vais utiliser un utilisateur nommé "vagrant" ici, donc "cd ~" est identique à "cd /home/vagrant" :

cd ~
mkdir -p /home/vagrant/wordpress
echo "<?php phpinfo(); ?>" > wordpress/index.php

Redémarrez le serveur Web nginx et php-fpm :

sudo service nginx restart
sudo service php5-fpm restart

Testez l'installation de PHP et Nginx en vous rendant sur le site "http://wpcli.co/ " dans un navigateur. Remplacez wpcli.co par le nom de domaine de votre site Web / serveur.

Installer WP-CLI

Pour installer wp-cli, vous devez télécharger le fichier .phar (.phar est un format d'archive PHP similaire à .jar pour java) depuis GitHub avec le curl ou wget commande, j'utiliserai curl ici :

cd /tmp
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Rendez le fichier wp-cli.phar exécutable :

chmod +x wp-cli.phar

Et déplacez-le dans la corbeille répertoire, la commande renomme wp-cli.phar en "wp" pour une utilisation plus facile :

sudo mv wp-cli.phar /usr/local/bin/wp

Testez maintenant wp-cli avec la commande :

wp --info

Vous pouvez voir ici que j'utilise PHP 5.6 et WP-CLI 0.20 .

Commandes WP-CLI de base

Jusqu'à cette étape, nous avons :

  • Une installation LEMP (Nginx, MySQL et PHP) en cours d'exécution.
  • Un VirtualHost avec le domaine wpcli.co (ou le nom de domaine que vous avez choisi pour votre site).
  • Un annuaire Web dans "/home/vagrant/wordpress/".
  • La commande WP-CLI est installée.

Nous allons maintenant installer WordPress avec le domaine "wpcli.co " dans le répertoire "/home/vagrant/wordpress/ ". Nous ferons cela avec WP-CLI .

1. Installez Wordpress et configurez la base de données

Veuillez accéder au répertoire Web :

cd /home/vagrant/wordpress/

Téléchargez WordPress en utilisant wp-cli, vous pouvez télécharger une version différente de WordPress, j'utiliserai la version 4.3.1 ici :

wp core download --version=4.3.1

Si vous souhaitez utiliser une version différente, modifiez simplement le numéro de version.

Ensuite, créez la base de données pour WordPress via le shell MySQL, veuillez vous connecter au serveur MySQL avec :

sudo mysql -u root -p
ENTER YOUR PASSWORD

Une fois connecté à MySQL, créez un nouvel utilisateur et une nouvelle base de données :

create database wordpressdb;
create user [email protected] identified by '[email protected]';
grant all privileges on wordpressdb.* to [email protected] identified by '[email protected]';
flush privileges;
\q

J'ai créé une nouvelle base de données avec le nom "wordpressdb" , un nouvel utilisateur "iamuser" , et j'ai accordé l'accès à la base de données à l'utilisateur.

La base de données a été créée, maintenant je vais créer un "wp-config.php " fichier avec les informations d'identification de la base de données de l'utilisateur MySQL que nous avons ajouté ci-dessus.

wp core config --dbname=wordpressdb --dbuser=iamuser [email protected]

Lorsque vous voyez cette ligne, le fichier a été créé avec succès.

Success: Generated wp-config.php file.

Les options expliquées :

  • --dbname =Nom de la base de données
  • --dbuser =Utilisateur qui a accordé à la base de données
  • --dbpass =Mot de passe de la base de données

Maintenant, si vous "cat" le fichier wp-config.php, vous y verrez la configuration de la base de données.

Il est maintenant temps d'installer WordPress avec la commande "wp core install ", la commande requiert ces paramètres :

  • --url :Votre nom de domaine. wpcli.co
  • --title :titre de votre site.
  • --admin_user :nom d'utilisateur de l'administrateur que vous utilisez pour vous connecter à WordPress.
  • --admin_password :mot de passe pour l'utilisateur administrateur
  • --admin_email :votre adresse e-mail pour être remarqué pour tout problème lié au site.

Allons-y :

wp core install --url=wpcli.co --title=WP-CLI\ \Tutorials --admin_user=admin --admin_password=aqwe123 [email protected]

La commande donne :

Success: WordPress installed successfully.

Visitez maintenant votre nom de domaine :wpcli.co à nouveau avec le navigateur Web.

(Si vous souhaitez tester l'administrateur, rendez-vous sur wpcli.co/wp-login.php à la place) .

REMARQUE :

Si vous obtenez un message d'erreur du type "sh :1 :/usr/sbin/sendmail :introuvable" , veuillez installer "sendmail" avec cette commande apt :

sudo apt-get install sendmail

2. Gestion des thèmes Wordpress avec WP-CLI

Rechercher les thèmes WordPress disponibles :

wp theme search KEYWORD-THEME

Installez un thème WordPress, dans ce cas, le thème avec le nom "MyKnowledgeBase":

wp theme install MyKnowledgeBase

Une fois le thème installé, activez il :

wp theme activate myknowledgebase

Obtenez une liste de tous les thèmes installés :

wp theme list

3. Gérer les plugins Wordpress avec WP-CLI

Rechercher des plug-ins :

wp plugin search KEYWORD

Installez un plug-in :

wp plugin install PLUGINNAME

Activer un plug-in :

wp plugin activate PLUGINNAME

Voir tous les plugins installés :

wp plugin list

Obtenez le statut des plugins, Actif ou Inactif :

wp plugin status

4. Gérer la base de données WordPress

Connectez-vous au shell MySQL en utilisant les identifiants WordPress :

wp db cli

Afficher tous les tableaux de la base de données wordpress :

wp db tables

Exportez la base de données WordPress dans un fichier .sql. Ceci est très utile pour les sauvegardes :

wp db export databasename.sql

Importer une base de données WordPress :

wp db import databasename.sql

Exécutez une requête MySQL sous l'utilisateur WordPress MySQL :

wp db query "MySQL Query"

5. Autres commandes

WP-CLI a beaucoup plus de commandes et d'options, vous pouvez utiliser "wp --help" pour voir toutes les commandes. Il existe des commandes pour gérer les utilisateurs de WordPress, les rôles des utilisateurs, les publications, le menu, les widgets, etc.

Conclusion

Wordpress est un CMS et une plate-forme de blogs populaires utilisés sur des millions de sites Web. Il existe de nombreux plugins et thèmes WordPress gratuits et commerciaux disponibles. WP-CLI est un ensemble de commandes pour gérer votre site WordPress, il est très utile et facile à utiliser. Vous pouvez créer et gérer votre site WordPress directement sur le shell sans avoir à vous connecter à WordPress dans le navigateur.


Ubuntu
  1. Premiers pas avec Zsh

  2. Démarrer avec ls

  3. Premiers pas avec PostgreSQL sous Linux

  4. Premiers pas avec Multipass - Exécution de machines virtuelles Ubuntu

  5. Comment démarrer avec Juju?

Premiers pas avec systemctl

Premiers pas avec le système de fichiers ZFS sur Ubuntu 19.10

Comment installer LEMP WordPress Ubuntu et Debian avec Virtualhost

Premiers pas avec cPanel

Comment :démarrer avec Ubuntu 14.04 LTS avec LAMP

Comment :démarrer avec Ubuntu 14.04 LTS avec LEMP