Еще один вариант среды для разработки WordPress (docker, wp-cli)

?v=1

Есть официальные образы для развертывания WordPress и использования wp-cli. Но при их совместном использовании мне приходилось расшаривать всю папку WordPress и хотелось, чтобы было больше возможностей для кастомизации установки.
Очень хотелось после запуска контейнера видеть в браузере не приглашение к выбору языка установки, а готовый сайт.
Эта статья предлагает один из способов развертывания сайтов на WordPress.


Установка

git clone https://github.com/eustatos/wordpress-docker-dev-env.git

или, если предпочитаете ssh:

git clone git@github.com:eustatos/wordpress-docker-dev-env.git

Затем:

cd wordpress-docker-dev-env
docker-compose up -d
docker-compose exec -T wp-cli sh < install.sh

На этом установка окончена. Откройте localhost:8080 в предпочитаемом браузере.
Доступ к админ панели localhost:8080/wp-admin.
Логин пользователя — admin
Пароль пользователя — 123

Изменить эти и другие переменные окружения и установки можно в файлах site.env и .env.

В папке проекта появляется папка wp-content, где можно создавать и\или изменять темы и плагины
Если есть проблемы с правами на файлы в папке wp-content:

sudo usermod -a -G www-data $USER


Кастомизация сборки

Вы можете управлять сборкой, как удобно. Например, если не нужно создавать темы и\или плагины по-умолчанию — просто внесите изменения в install.sh.

#!/usr/bin/env bash

wp core download --force --allow-root
wp config create \
  --dbhost=$WORDPRESS_DB_HOST \
  --dbname=$WORDPRESS_DB_NAME \
  --dbuser=$WORDPRESS_DB_USER \
  --dbpass=$WORDPRESS_DB_PASSWORD \
  --allow-root
wp core install \
  --title=$TITLE \
  --url=$URL \
  --admin_user=$ADMIN_USER \
  --admin_password=$ADMIN_PASSWORD \
  --admin_email=$ADMIN_EMAIL \
# add for skip creation default themes
  --skip-themes
# add for skip creation default plugins
  --skip-plugins
  --allow-root

Полее подробно о возможностях wp core install можно узнать
здесь


Пример создания темы

Например, для создания темы основанной на underscoresвыполните следующую команду

docker-compose exec -T wp-cli wp scaffold _s \
  sample-theme \
  --theme_name="Sample Theme" \
  --author="John Doe"

Эта команда создаст папку sample-theme в папкеwp-content с файлами темы и вы можете тут же начать ее модифицировать.

В завершении, короткое видео для наглядности


© Habrahabr.ru