3 min. читать
WP-CLI: Полное руководство по управлению WordPress из командной строки
WP-CLI — это официальный инструмент командной строки для управления установками WordPress непосредственно из Вашего терминала, без открытия браузера. Если Вы когда-нибудь проводили вторую половину дня, щелкая по панели администрирования WordPress, чтобы обновить плагины на нескольких сайтах, Вы уже знаете, зачем существует этот инструмент.
В этом руководстве Вы узнаете все: от установки WP-CLI на Linux, macOS и Windows до автоматизации сложных задач обслуживания с помощью скриптов и конфигурационных файлов. Независимо от того, управляете ли Вы одним блогом или десятками клиентских сайтов, освоение WP-CLI коренным образом изменит Вашу работу с WordPress.
Чему Вы научитесь:
- Как установить и настроить WP-CLI в разных операционных системах
- Основные команды для управления плагинами, темами, пользователями и контентом
- Операции с базами данных, включая экспорт, импорт и безопасный поиск-замену
- Методы автоматизации с помощью скриптов, псевдонимов и заданий cron
- Лучшие практики, позволяющие избежать распространенных ловушек при работе с терминала
Что такое WP-CLI? (Сначала краткое объяснение)
WP-CLI расшифровывается как WordPress Command Line Interface — это инструмент с открытым исходным кодом, который позволяет Вам управлять сайтами WordPress исключительно из терминала. Вместо того, чтобы входить в wp-admin и перемещаться по меню, Вы выполняете такие команды, как wp plugin update --all, и наблюдаете, как весь Ваш стек плагинов обновляется за считанные секунды.
Проект начался примерно в 2011 году и был создан разработчиками, которые хотели получить более быстрый способ управления WordPress в масштабе. В 2017 году он перешел под официальный зонтик WordPress.org и теперь поддерживается преданной командой разработчиков, включая Алена Шлессера и Даниэля Баххубера.
Вот что Вам нужно знать о WP-CLI:
- Текущая стабильная версия: Серия WP-CLI 2.x
- Совместимость с WordPress: Работает с WordPress 5.x — 6.x (и исторически возвращается к 3.7).
- Требования PHP: PHP 7.4+ или 8.x рекомендуется для безопасности и производительности
- Экосистема команд: Более 40 родительских команд, охватывающих практически все операции WordPress
- Основные пользователи: Разработчики, агентства, инженеры DevOps и опытные пользователи, управляющие сложными или многочисленными сайтами.
- Распространение: Доступен в виде PHAR-файла, через менеджеры пакетов или предустановлен на многих управляемых хостах WordPress.
Основные преимущества использования WP-CLI
Как только Вы поймете, зачем существует WP-CLI, кривую обучения станет гораздо легче оправдать. В этом разделе объясняются конкретные преимущества, благодаря которым этот инструмент стоит Вашего времени.
Экономия времени на повторяющихся задачах
Обновление 20 плагинов через приборную панель WordPress означает 20 загрузок страниц, 20 щелчков мышью и наблюдение за 20 индикаторами выполнения. С WP-CLI Вы запускаете
Массовые и автоматические операции
Рассмотрим сценарий, в котором Вы готовите 15 магазинов WooCommerce к Черной пятнице. Вам нужно обновить плагины, очистить кэш и проверить целостность базы данных на каждом сайте. WP-CLI позволяет Вам написать сценарий всей этой последовательности действий и выполнить его на всех сайтах за несколько минут, а не часов. Основные возможности автоматизации включают:
- Обновление всех плагинов на нескольких установках с помощью одного скрипта
- Массовое создание пользователей с заранее определенными ролями
- Выполнение ночного обслуживания через cron (оптимизация базы данных, очистка переходных процессов)
- Развертывание идентичных конфигураций WordPress в новых средах
Надежность операций с использованием браузера
Операции с использованием браузера сбиваются по таймауту HTTP. Импорт больших баз данных не выполняется в середине процесса. Операции поиска-замены повреждают сериализованные данные, когда выполняются с помощью необработанного SQL. WP-CLI позволяет избежать всех этих проблем, поскольку он выполняется непосредственно на сервере без ограничений по таймауту, а его команда search-replace корректно обрабатывает сериализованные структуры данных.
Прямой контроль над основными системами WordPress
С одного терминала Вы можете:
- Экспортируйте и импортируйте базу данных WordPress
- Измените настройки
wp-config.php - Проверяйте и запускайте события wp-cron
- Включение и выключение режима обслуживания
- Выполните произвольный PHP-код в контексте WordPress
Снижение нагрузки на wp-admin
На загруженных производственных серверах каждая загруженная страница панели администратора потребляет ресурсы. Выполнение операций по обслуживанию через WP-CLI снимает эту нагрузку с веб-сервера, что важно в периоды высокой посещаемости.
Требования к WP-CLI и поддерживаемые среды
Прежде чем устанавливать WP-CLI, Вам необходимо убедиться, что Ваш сервер или локальная среда соответствуют основным требованиям. Хорошая новость заключается в том, что большинство современных WordPress-установок уже соответствуют этим требованиям.
Требования к версии PHP:
- Минимум: PHP 5.6 (хотя это уже устарело)
- Рекомендуется: PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4 или 8.5 для обеспечения безопасности и производительности в 2026 году
Совместимость с версиями WordPress:
- Историческая поддержка: WordPress 3.7 и более новые версии
- Современная цель: WordPress 5.0 — 6.7+ для текущих проектов
Ожидания от операционной системы:
- Лучшая поддержка: UNIX-подобные системы (Ubuntu 22.04 LTS, Debian 12, CentOS Stream, macOS)
- Windows: Поддерживается с помощью WSL (подсистема Windows для Linux) или собственной установки PHP
Дополнительные требования:
- PHP доступен в командной строке (бинарный файл
phpдолжен быть в Вашем PATH). - cURL или wget для загрузки файла
wp-cli.phar - SSH-доступ к удаленным серверам (в большинстве тарифных планов управляемого хостинга WordPress он включен по умолчанию)
Многие популярные хостинги, такие как Kinsta, SiteGround и DreamHost, теперь поставляются с предустановленным WP-CLI. WordPress.com также включает WP-CLI для сайтов с включенным SSH-доступом.
Как установить WP-CLI на Linux и macOS
Стандартный метод установки использует официальный файл PHAR (PHP Archive). Этот процесс работает на терминалах Ubuntu, Debian, CentOS, Fedora и macOS.
Шаг 1: Загрузите файл PHAR
Откройте терминал и загрузите файл wp-cli.phar с помощью curl:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
В качестве альтернативы используйте wget:
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Шаг 2: Проверка загрузки (необязательно, но рекомендуется)
Сверьте контрольную сумму SHA-256 с официальным значением, опубликованным в документации по WP-CLI, чтобы убедиться, что файл не был подделан во время загрузки:
sha256sum wp-cli.phar
Сравните полученный результат с контрольной суммой, указанной на официальном сайте WP-CLI.
Шаг 3: Проверка файла PHAR
Убедитесь, что php-файл работает:
php wp-cli.phar --info
Вы должны увидеть результаты, отображающие версию WP-CLI, версию PHP и системную информацию.
Шаг 4: Сделайте его исполняемым и переместите в PATH
Пометьте файл как исполняемый и переместите его в директорию в Вашем системном PATH:
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
Команда sudo обычно требуется, поскольку /usr/local/bin — это системная директория. Избегайте установки WP-CLI от имени root, если Вы будете работать с ним в основном от имени обычного пользователя.
Шаг 5: Проверка глобальной установки
Подтвердите, что WP-CLI теперь доступен во всем мире:
wp --info
wp cli version
Вы должны увидеть результаты, подтверждающие версию wp cli, расположение бинарного файла PHP и данные об операционной системе. На этом этапе WP-CLI установлен и готов к работе.
Как установить WP-CLI на Windows
У пользователей Windows есть два основных пути: использовать Windows Subsystem for Linux (WSL) или установить родную Windows. WSL обеспечивает более Linux-подобный опыт и обычно рекомендуется.
Вариант 1: Использование WSL (рекомендуется)
Сначала включите WSL в Windows 10 или 11:
wsl --install
Установите Ubuntu из Microsoft Store, затем запустите терминал Ubuntu. Далее выполните те же шаги по установке Linux, которые были описаны в предыдущем разделе — скачайте файл phar, сделайте его исполняемым и переместите на /usr/local/bin/wp.
Вариант 2: «Родная» установка Windows
Для «родной» установки Вам потребуется установленный PHP для Windows с исполняемым файлом php в PATH Вашей системы.
- Загрузите и установите PHP с официального сайта PHP для Windows
- Добавьте каталог PHP в переменную окружения PATH в Windows.
- Убедитесь, что PHP работает, открыв Command Prompt и выполнив команду
php -v
Затем загрузите файл WP-CLI PHAR:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
С 2018 года в Windows по умолчанию включен curl, так что это должно работать без дополнительных настроек. Создайте папку для WP-CLI (например, C:\wp-cli) и переместите туда загруженный файл.
Затем создайте пакетный файл-обертку с именем wp.bat в той же папке:
@echo off
php "C:\wp-cli\wp-cli.phar" %*
Добавьте C:\wp-cli в переменную окружения PATH Вашей системы. Теперь откройте новое окно Командной строки или PowerShell и проверьте:
wp --info
Вы должны увидеть информацию о версии WP-CLI и окружении, подтверждающую, что WP-CLI установлен правильно.
Основы использования WP-CLI и получение помощи
Установив WP-CLI, Вам необходимо понять основную схему команд, прежде чем приступать к конкретным операциям. Все команды WP-CLI имеют следующую структуру:
wp <command> <subcommand> [options]
Команды выполняются из директории установки WordPress — папки, содержащей wp-config.php. Если Вы находитесь в другом месте, Вы можете указать путь с помощью --path=/var/www/html/mysite.
Проверка Вашего окружения
Начните с подтверждения Ваших настроек:
wp --info
Здесь отображается версия WP-CLI, версия PHP, путь к бинарным файлам PHP, операционная система и другие сведения об окружении. Чтобы увидеть только версию WP-CLI:
wp cli version
Изучение доступных команд
Чтобы перечислить все доступные команды wp cli:
wp help
Для получения справки по конкретной команде:
wp help plugin
wp help core update
Вы также можете добавить --help к любой команде:
wp user --help
Вывод справки отображается в виде пейджера, похожего на страницы Unix man. Нажмите q, чтобы выйти.
Первые команды, которые нужно попробовать:
wp core version— отображает версию Вашего WordPresswp plugin list— Показывает все установленные плагины WordPress с указанием их статусаwp theme list— показывает установленные темыwp user list— Список всех пользователей на сайте
Эти команды, доступные только для чтения, позволят Вам изучить свой сайт WordPress, ничего не меняя, что идеально подходит для того, чтобы освоиться с интерфейсом.
Установка и настройка WordPress с помощью WP-CLI
WP-CLI может выполнить полную свежую установку WordPress быстрее, чем традиционный веб-инсталлятор. Это особенно ценно при создании среды разработки или программном развертывании новых сайтов.
Предварительные условия
Прежде чем выполнять команды установки, Вам необходимо подготовить базу данных MySQL или MariaDB. Для этого примера предположим, что Вы создали:
- Имя базы данных:
wpsite_db - Пользователь базы данных:
wpsite_user - Пароль:
securepassword123 - Ведущий:
localhost
Шаг 1: Скачайте файлы ядра WordPress
Перейдите в нужную Вам директорию установки и скачайте ядро WordPress:
wp core download
Это позволяет получить последнюю версию WordPress. Чтобы указать версию или локаль:
wp core download --version=6.4.2 --locale=fr_FR
После завершения Вы увидите подтверждение того, что WordPress был успешно загружен.
Шаг 2: Создайте wp-config.php
Создайте файл конфигурации с помощью wp config create:
wp config create --dbname=wpsite_db --dbuser=wpsite_user --dbpass=securepassword123 --dbhost=localhost
При этом создается полный wp-config.php с учетными данными Вашей базы данных и автоматически сгенерированными солями безопасности.
Шаг 3: Запустите установку
Теперь установите WordPress, указав данные Вашего сайта:
wp core install --url=https://example.com --title="My New Site" --admin_user=admin --admin_password=strongpassword [email protected]
Вы увидите сообщение «WordPress успешно установлен», и Ваш сайт будет готов к использованию.
Многосайтовая установка
Для многосайтовых сетей WordPress используйте вариант multisite. WP-CLI может настраивать многосайтовые установки с помощью:
wp core multisite-install --url=https://example.com --title="My Network" --admin_user=admin --admin_password=strongpassword [email protected]
Управление темами с помощью WP-CLI
WP-CLI выполняет все операции с темами, не требуя доступа к панели администратора WordPress. Вы можете составлять список, устанавливать, активировать, обновлять и удалять темы прямо из своего терминала.
Список установленных тем
Чтобы просмотреть все установленные на данный момент темы:
wp theme list
Образец вывода:
| имя | статус | обновление | версия |
|---|---|---|---|
| двадцать двадцать четыре | активная | none | 1.0 |
| двадцать три | неактивный | none | 1.2 |
| astra | неактивный | доступно | 4.5.0 |
Активация темы
Переключитесь на другую тему:
wp theme activate astra
Это немедленно изменит активную тему. Переключение обратно на тему по умолчанию полезно для устранения проблем, связанных с темой:
wp theme activate twentytwentyfour
Установка новых тем
Установите тему из репозитория WordPress.org:
wp theme install astra
Установите и активируйте одной командой:
wp theme install astra --activate
Обновление тем
Обновите определенную тему:
wp theme update astra
Или обновите все темы сразу:
wp theme update --all
Удаление тем
Удалите тему, которая Вам больше не нужна:
wp theme delete twentytwentythree
Управление плагинами с помощью WP-CLI
Управление плагинами — это то место, где WP-CLI экономит больше всего времени. Вы можете выполнять массовые операции, на которые в приборной панели потребовались бы десятки щелчков.
Листинг плагинов
wp plugin list
Образец вывода:
| имя | статус | обновление | версия |
|---|---|---|---|
| woocommerce | активная | none | 8.5.1 |
| yoast-seo | активная | доступно | 21.0 |
| elementor | неактивный | none | 3.18.0 |
Установка плагинов
Установите плагин по его названию:
wp plugin install woocommerce
Установите и активируйте:
wp plugin install yoast-seo --activate
Активация и деактивация
Активируйте плагин:
wp plugin activate elementor
Деактивируйте плагин (полезно для отладки):
wp plugin deactivate elementor
Деактивируйте все плагины сразу (спасает при отладке «белого экрана смерти»):
wp plugin deactivate --all
Обновление плагинов
Обновите определенный плагин:
wp plugin update yoast-seo
Обновите все плагины:
wp plugin update --all
Вы также можете исключить определенные плагины из массового обновления:
wp plugin update --all --exclude=woocommerce
Обновление и восстановление ядра WordPress
Постоянное обновление WordPress очень важно для безопасности. WP-CLI делает этот процесс прозрачным и контролируемым.
Проверка наличия обновлений
wp core check-update
Обновление WordPress
Обновитесь до последней версии:
wp core update
После обновления ядра рекомендуется обновить схему базы данных:
wp core update-db
Проверка контрольных сумм
Если Вы подозреваете, что Ваш сайт был взломан, Вы можете проверить, не были ли изменены основные файлы:
wp core verify-checksums
Он сравнивает Ваши файлы с контрольными суммами официального репозитория WordPress.
Переустановка Core
Если файлы повреждены, Вы можете принудительно переустановить их без ущерба для Вашего содержимого:
wp core download --force --skip-content
Управление контентом, пользователями и базой данных
WP-CLI позволяет Вам напрямую взаимодействовать с данными Вашего сайта.
Управление пользователями
Список пользователей:
wp user list
Создайте нового администратора:
wp user create newadmin [email protected] --role=administrator --user_pass=securepass123
Обновите пароль пользователя:
wp user update 1 --user_pass=newpassword
Удалите пользователя и переназначьте его контент:
wp user delete 5 --reassign=1
Операции с базой данных
Экспортируйте базу данных в файл:
wp db export backup.sql
Импортируйте базу данных из файла:
wp db import backup.sql
Оптимизируйте базу данных:
wp db optimize
Откройте консоль MySQL, напрямую подключенную к Вашей базе данных WordPress:
wp db cli
Поиск и замена (правильный способ)
Переносить сайт WordPress на новый домен вручную очень рискованно, поскольку данные часто сериализованы в базе данных. Простой поиск и замена в SQL приведет к поломке виджетов и опций темы. WP-CLI правильно обрабатывает сериализацию.
Стандартный поиск-замена
wp search-replace 'http://old-domain.com' 'https://new-domain.com'
Dry Run (Preview)
Всегда проверяйте, что изменится, прежде чем выполнять команду:
wp search-replace 'http://old-domain.com' 'https://new-domain.com' --dry-run
Экспорт с заменой
Вы можете экспортировать базу данных с заменой, сделанной в файле, оставив живую базу данных нетронутой:
wp search-replace 'old.com' 'new.com' --export=migrated-db.sql
Продвинутое обслуживание: Cron и кэш объектов
Управление заданиями Cron
Просмотр запланированных событий:
wp cron event list
Немедленно запустите все необходимые события cron:
wp cron event run --due-now
Управление переходными процессами и кэшем
Очистите кэш объектов:
wp cache flush
Удалите все истекшие переходные периоды:
wp transient delete --expired
Автоматизация заданий с помощью сценариев
Вы можете объединить команды WP-CLI в сценарии Bash для автоматического обслуживания.
Пример: Сценарий еженедельного обслуживания
Создайте файл с именем maintain.sh:
#!/bin/bash
# Update everything
wp core update
wp core update-db
wp plugin update --all
wp theme update --all
# Cleanup
wp transient delete --expired
wp cache flush
wp db optimize
echo "Maintenance complete."
Сделайте его исполняемым (chmod +x maintain.sh) и запустите, чтобы выполнить полное обслуживание сайта за считанные секунды.
Использование WP-CLI удаленно через SSH
Вам не нужно входить на сервер, чтобы выполнять команды, если Вы настроили псевдонимы.
В Вашем локальном файле wp-cli.yml:
@prod:
ssh: [email protected]/var/www/html
@dev:
ssh: [email protected]/var/www/html
Теперь Вы можете выполнять команды на удаленном сервере с Вашей локальной машины:
wp @prod plugin list
wp @dev core version
Лучшие практики
- Всегда создавайте резервные копии: Прежде чем выполнять массовые обновления или команды поиска-замены, запустите
wp db export. - Используйте Dry Run: Для поиска-замены всегда используйте сначала
--dry-run. - Не запускайте программу от имени Root: WP-CLI предупреждает Вас, если Вы запускаете программу от имени root. Безопаснее запускать его от имени пользователя веб-сервера (например,
www-data) или Вашей конкретной учетной записи. - Протестируйте на Staging: Используйте WP-CLI для клонирования Вашего рабочего сайта в staging, протестируйте там свои скрипты обновления, а затем примените их в production.
Заключение
WP-CLI превращает управление WordPress из серии щелчков в упорядоченные операции, выполняемые с помощью сценариев. Начав с простых команд, таких как проверка версий и перечисление плагинов, Вы заложите основу для продвинутой автоматизации. Внедрив WP-CLI в свой рабочий процесс сегодня, Вы сэкономите бесчисленное количество часов на всех своих WordPress-проектах.