Эта статья является частью серии, созданной в сотрудничестве с SiteGround . Спасибо за поддержку партнеров, которые делают возможным использование SitePoint.
Что такое WP-CLI?
WP-CLI — это инструмент, который позволяет вам выполнять действия по установке WordPress прямо из командной строки. Автоматизация WP-CLI — это автоматизация повторяющихся ручных задач с использованием сценариев, управляемых WP-CLI. Это может показаться ненужным, неловким или слишком сложным делом, с которым приходится сталкиваться при развертывании или управлении одной установкой WordPress, но когда вы управляете многими или постоянно создаете аналогичные новые сайты для тестирования, это становится чрезвычайно ценным инструментом. иметь в своем наборе инструментов разработчика.
О WP-CLI
С WP-CLI вы можете выполнять любые действия, которые вы можете выполнять через панель администратора, но вместо этого из командной строки. Вы можете установить или обновить основные файлы WordPress, плагины или темы. Вы можете активировать и деактивировать плагины или восстановить эскизы изображений. Вы также можете выполнить действия с базой данных, такие как экспорт и импорт базы данных, или найти и заменить базу данных для получения информации, такой как измененный URL-адрес во время миграции.
Некоторые плагины также имеют поддержку WP-CLI — в том числе многие из наиболее популярных. Это означает, что вы можете настроить автоматические сценарии для установки и настройки WordPress, установки этих плагинов, а затем для настройки плагинов, используя свои собственные настраиваемые команды WP-CLI!
WP-CLI Автоматизация
Автоматизация WP-CLI выходит за рамки простого использования командной строки при настройке или управлении несколькими установками WordPress. Возможность обновления или резервного копирования нескольких сайтов одновременно или создания сложных стандартных установок с помощью одной команды невероятно полезна и может сэкономить значительное количество времени сопровождающим этих сайтов.
Если у вас еще не установлен WP-CLI, ознакомьтесь с документацией по установке и запустите WP-CLI.
Пять вариантов использования для автоматизации WP-CLI
Установка WordPress
После установки WordPress этот пример сценария может загружать, настраивать и устанавливать ядро WordPress, удалять стартовые плагины, добавлять и активировать указанную тему (сохранено в example-theme.zip), а также устанавливать и активировать список плагинов, которые вы предпочитаете. использовать с новыми установками.
Пример:
#!/usr/bin/env bash
#plugins to install and activate (slugs)
WPPLUGINS=( test-plugin1 test-plugin2 test-plugin3 )
echo "Starting WordPress Installation Script"
# Site Name Input
echo "Site Name: "
read -e sitename
# Site URL Input
echo "Site URL: "
read -e siteurl
# Download WP and configure it
wp core download
wp core config --dbname=$dbname --dbuser=root --dbpass=root
wp db create
wp core install --url=$siteurl --title="$sitename" --admin_user="admin" --admin_password="examplePassword123" --admin_email="test@example.com"
# Remove default plugins, install plugins, install Base Theme
wp plugin delete --all
wp theme install example-theme.zip --activate
wp plugin install ${WPPLUGINS[@]} --activate
echo "WordPress installation complete!"
Однако вы можете еще больше автоматизировать этот процесс, запросив у пользователя информацию об относительном пути, чтобы вам не нужно было находиться в установочном каталоге, чтобы запустить его, запросив имя базы данных и пароль и многое другое. Вы также можете выполнить (как вы увидите далее в этой статье) настройку среды хостинга, которая обрабатывает несколько установок WordPress на одном сервере, а также настраивать и устанавливать более одного сайта одновременно. Настройте скрипт так, как вам нужно, чтобы он был максимально эффективным для ваших собственных проектов, и чтобы вам не приходилось постоянно его переписывать — сделайте его эффективным!
Резервное копирование WordPress
Резервное копирование вашей установки WordPress является обязательным, но есть множество способов сделать это. Вы можете легко создавать резервные копии с помощью нескольких плагинов для резервного копирования WordPress , но вы также можете делать это прямо из командной строки.
Во-первых, вы захотите запустить (из командной строки или через скрипт) wp db export example.com_20170501T1420
Конечно, если полностью автоматизировать этот процесс, было бы удобно добавить метку времени к именам файлов.
Как только это будет сделано, корневой каталог вашего сайта будет содержать файл .sql
Затем вы можете запустить простой tar -vczf example.com_20170501T1420.gz .
(используя то же имя файла для этого архива резервной копии), который будет сжимать как файлы сайта, так и файл .sql
Теперь с помощью командной строки, сценария или SFTP-клиента вы можете скопировать этот архивный файл на другой компьютер, диск или в облачное хранилище, за считанные секунды скопировав резервную копию файлов и базы данных!
Обновления WordPress Core
Чтобы обновить файлы ядра WordPress для сайта в текущем каталоге, выполните команду wp core update
Эта команда действительно светит, когда вы настраиваете скрипт для циклического просмотра списка установок на текущем сервере, обновляя каждую по очереди, вводя одну команду.