Created
November 14, 2025 12:52
-
-
Save josejuansanchez/9b4e54a4d0a9ed7258fd09294c963232 to your computer and use it in GitHub Desktop.
Instalación de WordPress con WP-CLI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| set -ex | |
| # Importamos las variables de entorno | |
| source .env | |
| # Eliminamos descargas previas de WP-CLI | |
| rm -f /tmp/wp-cli.phar | |
| # Descargamos WP-CLI | |
| wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -P /tmp | |
| # Le asignamos permisos de ejecución | |
| chmod +x /tmp/wp-cli.phar | |
| # Movemos wp-cli.phar a /usr/local/bin/wp | |
| mv /tmp/wp-cli.phar /usr/local/bin/wp | |
| # Eliminamos instalaciones previas de WordPress | |
| rm -rf /var/www/html/* | |
| # Descargamos WordPress en español en el directorio /var/www/html | |
| wp core download --locale=es_ES --path=/var/www/html --allow-root | |
| # Creamos una base de datos de wordpress | |
| mysql -u root -e "DROP DATABASE IF EXISTS $DB_NAME" | |
| mysql -u root -e "CREATE DATABASE $DB_NAME" | |
| # Creamos un usuario/contraseña para la base de datos | |
| mysql -u root -e "DROP USER IF EXISTS $DB_USER@'$IP_CLIENTE_MYSQL'" | |
| mysql -u root -e "CREATE USER $DB_USER@'$IP_CLIENTE_MYSQL' IDENTIFIED BY '$DB_PASSWORD'" | |
| # Le asignamos privilegios al usuario | |
| mysql -u root -e "GRANT ALL PRIVILEGES ON $DB_NAME.* TO $DB_USER@'$IP_CLIENTE_MYSQL'" | |
| # Creamos el archivo wp-config.php | |
| wp config create \ | |
| --dbname=$DB_NAME \ | |
| --dbuser=$DB_USER \ | |
| --dbpass=$DB_PASSWORD \ | |
| --dbhost=$DB_HOST \ | |
| --path=/var/www/html \ | |
| --allow-root | |
| # Instalamos WordPress | |
| wp core install \ | |
| --url=$CERTBOT_DOMAIN \ | |
| --title="$WORDPRESS_TITLE" \ | |
| --admin_user=$WORDPRESS_ADMIN_USER \ | |
| --admin_password=$WORDPRESS_ADMIN_PASSWORD \ | |
| --admin_email=$WORDPRESS_ADMIN_EMAIL \ | |
| --path=/var/www/html \ | |
| --allow-root | |
| # Configuramos los enlaces permanentes | |
| wp rewrite structure '/%postname%/' \ | |
| --path=/var/www/html \ | |
| --allow-root | |
| # Instalamos el plugin de WPS Hide Login | |
| wp plugin install wps-hide-login --activate \ | |
| --path=/var/www/html \ | |
| --allow-root | |
| # Configuramos una URL personalizada para la página de login | |
| wp option update whl_page $URL_HIDE_LOGIN --path=/var/www/html --allow-root | |
| # Mofificamos el propietario y el grupo de /var/www/html a www-data | |
| chown -R www-data:www-data /var/www/html |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment