Installer un WordPress en 2 minutes

wp-cli - la ligne de commande pour WordPress

Dans des articles précédent, j’avais partagé les 4 façons d’installer WordPress, puis expliqué l’interêt du fichier de configuration pour installer WordPress.
Dans mon article précédent (résolutions de l’année 2021), ma première résolution de l’année était apprendre à développer sur WordPress.

Sous ce titre putaclic, je partage avec vous la manière d’installer un WordPress rapidement, en utilisant la ligne de commande de WordPress. Le but de cette installation est d’être prêt à développer un thème complet sur le CMS.

Pour utiliser cette technique, il faut d’abord avoir wp-cli d’installé sur votre ordinateur.
Ensuite, mettre dans le dossier qui contiendra votre WordPress, le fichier de configuration wp-cli.yml.
Pour finir, récupérer le script CLI d’installation du WordPress.

Au cas-où, je vous donne aussi le script qui permet de nettoyer complétement un dossier de son WordPress.

Pour expliquer un minimum le script d’installation du WordPress, il permet les choses suivantes :

  • Installation des fichiers WP dans le dossier.
  • Configuration de base du WordPress (avec création du fichier wp-config.php)
  • Suppression des contenus basique de WordPress (posts, commentaires, meta, etc…).
  • Insertion de quelques articles de blog (et de commentaires)
  • Création d’un thème minimal, pour le développement
  • Même chose avec un plugin.
  • Suppression des thèmes et plugins de base de WordPress

Ce que je propose est une base pour l’installation d’un WordPress.
Selon ce que vous voulez faire, il est possible de rajouter d’autres paramètres.

Fichier de configuration wp-cli.yml

# Global parameter for the dev environnement
color: true
disabled_commands:
  - network meta
  - shell
  - server
apache_modules:
  - mod_rewrite
rewrite structure:
  - /%year%/%monthnum%/%postname%/
core download:
  locale: fr_FR
core config:
  dbuser: root
  dbpass: admin
  dbhost: localhost
  dbname: wordpress
  dbprefix: wp_
  extra-php: |
    define('WP_DEBUG', true);
    if (WP_DEBUG) {
      define('WP_DEBUG_LOG', true);
      define('WP_DEBUG_DISPLAY', false);
      @ini_set('display_errors',0);
    }
    define('WP_CACHE', false); // on enlève le cache
    define('WP_POST_REVISIONS', false);
    define('DISALLOW_FILE_EDIT',true);
    define('SAVEQUERIES', true);
core install:
  admin_user: guillaume
  admin_password: guillaume
  admin_email: g.jf.richard@gmail.com
  title: WordPress Development
  url: http://local.wordpress/
scaffold _s:
  minimal-theme
  activate: true
  theme_name: Minimal Theme
  author: Guillaume RICHARD
  author_uri: https://guillaume-richard.fr/
  sassify: true
scaffold plugin:
  minimal-plugin
  activate: true
  plugin_name: Minimal Plugin
  plugin_description: My sample-plugin description
  plugin_author: Guillaume RICHARD
  plugin_author_uri: https://guillaume-richard.fr/
  plugin_uri: https://jf-blog.fr/
theme delete:
  - twentynineteen
  - twentytwenty
  - twentytwentyone
plugin delete:
  - hello
  - akismet
post generate:
  post_author: guillaume
  post_date: 2021-01-01
  count: 20
comment create:
  comment_post_ID: 1
  comment_content: "hello blog"
  comment_author: "wp-cli"

Installation de WordPress

wp core download
wp core config
wp db create
wp core install
wp scaffold _s
wp theme delete
wp scaffold plugin
wp plugin delete
wp rewrite structure --hard
wp rewrite flush --hard
wp site empty --yes ## Empties a site of its content (posts, comments, terms, and meta).
rm -rf wp-content/uploads/
curl -N http://loripsum.net/api/5 | wp post generate --post_content
	
for i in `seq 1 30`;
do
	wp comment create;
done

Suppression d’un WordPress

wp db drop --yes

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

rm wp-config.php .htaccess

echo "Projet supprimé à 100%"

Qu’en pensez-vous ?

vel, elementum leo libero. facilisis libero nec