Insy-tallation / mise-à-jour de WordPress avec wp-cli
This commit is contained in:
2018-08-19 17:00:35 +02:00
parent 56c1ed28cb
commit 2f59ac37b4
9 changed files with 1264 additions and 0 deletions

95
wp-cli/install_wp_yml.sh Executable file
View File

@@ -0,0 +1,95 @@
#!/usr/bin/env bash
# WordPress installer (wp-cli.local.yml)
if [ "$1" == "--help" ]; then
echo -e "\033[93minstall_wp_yml.sh\033[0m"
echo
echo "Installateur WordPress"
echo
echo "Requiert:"
echo " - wp-cli (https://wp-cli.org/)"
echo " - wp-cli.local.yml DOIT être présent dans \$wordpress_path"
echo
echo "Configuration:"
echo -e " - \033[4m\$wordpress_path\033[0m est le dossier où sera installé WordPress"
echo -e " - \033[4m\$wp_config_yml\033[0m est le nom du fichier d'installation WordPress. Il sera copié dans \$wordpress_path"
echo
echo "USAGE: install_wp_yml"
echo
echo " --help display this help"
echo
exit 0
fi
# *** Variables à configurer / Configure this variables ***:
wordpress_path="/home/bruno/Sites/"
wp_config_yml="wp_mint.local.yml"
# *** -----------------------***
echo
# On copie le fichier de configuration sur le serveur
yml_file="$(pwd)/$wp_config_yml"
#[ ! -f "$yml_file" ] || (echo "No configuration file ("$wp_config_yml") found! Let's exit :-(" && exit 0)
if [ ! -f "$yml_file" ]; then
echo "No configuration file ("$wp_config_yml") found! Let's exit :-("
exit 0
else
echo "Configuration file "$wp_config_yml" found! Let's copy it to "$wordpress_path""
cp "$(pwd)/$wp_config_yml" "$wordpress_path/wp-cli.local.yml"
fi
cd $wordpress_path
echo -e "\n\033[1mWordPress installation\033[0m"
# On récupère la liste des packages installés
packages_list=$(wp package list | sed -n '1!p' | awk '{print $1'})
# Il y a déjà une installation de WordPress ?
exist=$(wp find . | sed -n '1!p' | awk '{print$1}')
# Si oui, on la supprime
if [ -n "$exist" ]; then
# /home/bruno/Sites/wordpress/wp-includes/version.php
wp_exist="$(dirname $(dirname $exist))"
wp_folder_name=$(echo "$exist" | awk -F "/" '{for (i=1;i<=NF;i++) if ($i=="wp-includes") print $(i-1)}')
read -p $'\n\033[1;31mWordPress is already installed. Do you really want to erase it ? \033[39m(y/n)\033[0m' choice
case "$choice" in
y|Y|o ) cd "$wp_folder_name/" && wp db drop --yes && cd "$wordpress_path" && rm -rf "$wp_folder_name/" && echo "Deleting directory '$wordpress_path/$wp_folder_name'.";;
* ) echo "Ok, let's exit" && exit 0;;
# * ) echo "invalid";;
esac
fi
echo
wp core download
wp core config
wp db create
wp core install --skip-email
wp theme install
wp theme activate
wp plugin install
# Installer un plug-in depuis une archive:
#$ wp plugin install https://d1qas1txbec8n.cloudfront.net/wp-content/uploads/2015/06/23073607/myplugin.zip
# Si le package /wp-cli/admin-command est installé, on ouvre la page d'administration
if [ -n "$(echo "$packages_list" | awk '$1 ~ /wp-cli\/admin-command/')" ]; then
wp admin
else
wp package install wp-cli/admin-command
echo ""
wp admin
fi