WP-CLI является официальным инструментом командной строки для взаимодействия с вашими сайтами WordPress и управления ими.
WP-CLI — это интерфейс командной строки для WordPress. Цель проекта состоит в том, чтобы предложить полную альтернативу администратору WordPress; для любого действия, которое вы можете выполнить в администраторе WordPress, должна быть эквивалентная команда WP-CLI.
Во-первых, работать в командной строке, SSH, Telnet, например (tutty).
Начинаем установку.
Скачиваем WP-CLI,
или:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Затем проверьте, работает ли он:
php wp-cli.phar --info
Примерный ответ:
OS: Linux 4.10.0-42-generic #46~16.04.1-Ubuntu SMP Mon Dec 4 15:57:59 UTC 2017 x86_64
Shell: /usr/bin/zsh
PHP binary: /usr/bin/php
PHP version: 7.1.12-1+ubuntu16.04.1+deb.sury.org+1
php.ini used: /etc/php/7.1/cli/php.ini
WP-CLI root dir: /home/wp-cli/.wp-cli
WP-CLI packages dir: /home/wp-cli/.wp-cli/packages/
WP-CLI global config: /home/wp-cli/.wp-cli/config.yml
WP-CLI project config:
WP-CLI version: 1.5.0
Создаём папку bin в корне хоста, если её нет и ставим файл wp-cli.phar в неё.
Затем проверьте, работает ли он:php bin/wp-cli.phar –info
Выполним:
chmod +x bin/wp-cli.phar
mv bin/wp-cli.phar /bin/wp
Чтобы иметь возможность вводить где угодно:
Создаем файл .profile в корне хоста, если он есть, добавить недостающие строки:PATH=':/sbin:/bin:/usr/sbin:/usr/bin'
alias wp='
путь
/php /
путь
/bin/wp'
Перезапустим tutty
Проверяем:
wp —info
Теперь вы являетесь официальным пользователем WP-CLI.
Хотите знать, что делать дальше? Проверьте быстрый старт руководство для краткого введения и некоторые примеры использования.
Например, поскольку вы можете установить плагин от администратора WordPress, вы также можете установить плагин с WP-CLI:
$ wp plugin install akismet
Installing Akismet (3.1.8)
Downloading install package from https://downloads.wordpress.org/plugin/akismet.3.1.8.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
И, поскольку вы также можете активировать плагины от администратора WordPress, вы можете активировать плагин с WP-CLI:
$ wp plugin activate akismet
Success: Plugin 'akismet' activated.
Одно из ключевых отличий между использованием администратора WordPress и WP-CLI: выполнение любого действия занимает гораздо меньше кликов. По мере того как вы будете более знакомы с командной строкой, вы заметите выполнение данной задачи с WP-CLI, как правило, гораздо быстрее, чем выполнение той же задачи через администратора WordPress. Инвестирование времени авансом в обучение, как лучше использовать WP-CLI платит дивиденды в долгосрочной перспективе.
WP-CLI также имеет ряд глобальных аргументов, которые работают со всеми командами. Например, в том числе означает, что выполнение команды будет отображать все ошибки PHP и добавлять дополнительные многословия в процесс загрузки WP-CLI.--debug
Вот несколько распространенных примеров того, как используется WP-CLI:
Скачать и установить WordPress в считанные секунды
- Скачать последнюю версию WordPress с (doc).
wp core download
$ wp core download --path=wpclidemo.dev
Creating directory '/srv/www/wpclidemo.dev/'.
Downloading WordPress 4.6.1 (en_US)...
Using cached file '/home/vagrant/.wp-cli/cache/core/wordpress-4.6.1-en_US.tar.gz'...
Success: WordPress downloaded.
- Создайте новый файл wp-config.php с(doc).
wp config create
$ cd wpclidemo.dev
$ wp config create --dbname=wpclidemo --dbuser=root --prompt=dbpass
1/10 [--dbpass=<dbpass>]:
Success: Generated 'wp-config.php' file.
- Создайте базу данных на основе wp-config.php с(doc).
wp db create
$ wp db create
Success: Database created.
- Установите WordPress с(doc).
wp core install
$ wp core install --url=wpclidemo.dev --title="WP-CLI" --admin_user=wpcli --admin_password=wpcli --admin_email=info@wp-cli.org
Success: WordPress installed successfully.
Ну вот!
Обновление плагинов к их последней версии
Используйте (doc) для обновления всех плагинов к их последней версии.
wp plugin update --all
$ wp plugin update --all
Enabling Maintenance mode...
Downloading update from https://downloads.wordpress.org/plugin/akismet.3.1.11.zip...
Unpacking the update...
Installing the latest version...
Removing the old version of the plugin...
Plugin updated successfully.
Downloading update from https://downloads.wordpress.org/plugin/nginx-champuru.3.2.0.zip...
Unpacking the update...
Installing the latest version...
Removing the old version of the plugin...
Plugin updated successfully.
Disabling Maintenance mode...
Success: Updated 2/2 plugins.
+------------------------+-------------+-------------+---------+
| name | old_version | new_version | status |
+------------------------+-------------+-------------+---------+
| akismet | 3.1.3 | 3.1.11 | Updated |
| nginx-cache-controller | 3.1.1 | 3.2.0 | Updated |
+------------------------+-------------+-------------+---------+
Добавить пользователя в качестве супер-администратора
На многосайте, используйте (doc) для предоставления возможностей супер администратора существующему пользователю.
wp super-admin add
$ wp super-admin add wpcli
Success: Granted super-admin capabilities.
Регенерировать эскизы
Если вы добавили или изменили размер изображения, зарегистрированный с, вы можете использовать (doc), так что ваша тема отображает правильный размер изображения.
add_image_size()wp media regenerate
wp media regenerate --yes
Found 1 image to regenerate.
1/1 Regenerated thumbnails for "charlie-gpa" (ID 4).
Success: Finished regenerating the image.
Хотите знать, что дальше? Просмотрите все команды WP-CLI, чтобы исследовать ваш новый мир. Или, догнать оболочки друзей, чтобы узнать о полезных утилитах командной строки.
Обновление WordPress с интерфейсом командой строки проходит в два этапа, так как вам необходимо обновить файлы WordPress, а затем базу данных.
Начните с обновления корневых файлов WordPress:
wp core update
Запустите команду для обновления базы данных до необходимой версии:
wp core update-db
Примерный результат:
Success: WordPress database already at latest db version 38590.
Для обновления темы или плагина WordPress через WP-CLI смените core на theme или plugin. Параметр –all используется для обновления всех установленных тем/плагинов, но вы можете изменить его на определенное название плагина или темы:
Для тем:
wp theme update --all
Для плагинов:
wp plugin update --all
С помощью WP-CLI вы можете автоматизировать процесс импорта изображений. К примеру, мы хотим импортировать все изображения из папки изображения_для_сайта. Мы может достичь этой цели использовав эту одну команду:
wp media import изображения_для_сайта/*
операция генерирует SQL файл дампа вашей базы данных WordPress:
wp db export
Примерный результат:
Success: Exported to 'u694443746_dapyz-a0d3f2a.sql'.
Для импорта SQL файла в базу данных WordPress:
wp db import file.sql
Полный список команд
Команда | Описание |
wp admin | Открывает /wp-admin/ в браузере. |
wp cache | Добавляет, удаляет, формирует кеш. |
wp cap | Добавляет, удаляет, показывает список возможностей пользователей. |
wp cli | Посмотреть версию WP-CLI, проверить обновления. |
wp comment | Создавать, удалять, модерировать комментарии. |
wp config | Генерирует и выводит wp-config.php файл. |
wp core | Скачивает, устанавливает и обновляет движок. |
wp cron | Тестирование, запуск и удаление Cron событий. |
wp db | Операции с базой данных. |
wp dist-archive | Создает архив для дистрибуции |
wp embed | Просмотр oEmbed источников, очистка кеша. |
wp eval | Выполняет произвольный PHP код. |
wp eval-file | Загружает и выполняет PHP файл. |
wp export | Экспорт контента в WXR файл. |
wp find | Поиск установленных WP. |
wp help | Помощь по WP-CLI. |
wp i18n | Инструменты для перевода WP. |
wp import | Импорт контента из WXR файла. |
wp language | Установка, активация и просмотр языков. |
wp maintenance-mode | Активация и деактивация режима обслуживания. |
wp media | Импорт медиафайлов, пересоздание миниатюр, список зарегистрированных размеров. |
wp menu | Просмотр, создание, удаление меню. |
wp network | Операции по работе с сетью. |
wp option | Получение всех опций сайта. |
wp package | Просмотр, установка и удаление WP-CLI пакетов. |
wp plugin | Просмотр, установка, активация и удаление плагинов. |
wp post | Просмотр постов. |
wp post-type | Просмотр информации обо всех типах постов. |
wp profile | Работа с профилями |
wp rewrite | Список правил перенаправления, ЧПУ. |
wp role | Просмотр ролей пользователей. |
wp scaffold | Генератор кода для типов постов, таксономий, плагинов и т.д. |
wp search-replace | Правильный поиск и замена по базе данных. |
wp server | Запускает сервер для WP. |
wp shell | Открывает PHP консоль для тестирования кода. |
wp sidebar | Список сайдбаров. |
wp site | Работа с мультисайтом, создание, удаление и т.д. |
wp super-admin | Работа с юзерами в режиме мультисайта. |
wp taxonomy | Получение информации обо всех таксономиях. |
wp term | Просмотр и работа с элементами таксономий. |
wp theme | Просмотр, установка, активация и удаление тем. |
wp transient | Работа с временным кешем Transient. |
wp user | Работа с пользователями. |
wp widget | Работа с виджетами. |
Примеры команд
Обновляем WP до актуальной версии:
wp core update
Получаем список всех плагинов, которые есть на сайте:
wp plugin list
Экспорт базы данных в SQL файл:
wp db export wp.sql
Сгенерировать рандомные посты:
wp post generate –count=5 –post_type=post
Заключение
WP-CLI мощнейший инструмент для работы с вордпресс. Он может почти полностью заменить работу с сайтом из обычной админки. А некоторые вещи и вовсе нельзя сделать из админки, зато есть в консоли.