WP-CLI — это мощный инструмент командной строки для управления сайтами на WordPress. Он позволяет выполнять множество административных задач без захода в админку, что ускоряет работу и облегчает автоматизацию рутинных процессов.
Что такое WP-CLI и зачем он нужен
WP-CLI (WordPress Command Line Interface) — это набор команд, который вы запускаете в терминале на сервере. С его помощью можно:
- устанавливать и обновлять плагины и темы;
- управлять пользователями;
- импортировать и экспортировать данные;
- очищать базу данных;
- создавать резервные копии;
- и многое другое.
Использование WP-CLI особенно полезно для разработчиков и системных администраторов, которым надо быстро и эффективно управлять несколькими сайтами или выполнять повторяющиеся задачи.
Установка WP-CLI
Для начала надо установить сам WP-CLI. Это делается командой:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
php wp-cli.phar --info
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wpПосле этого команда wp станет доступна в терминале. Проверить версию можно так:
wp --versionОсновные команды WP-CLI для автоматизации
Управление плагинами
Для установки плагина используйте:
wp plugin install plugin-slug --activateНапример, чтобы установить Clearfy Pro от WPSHOP:
wp plugin install clearfy-pro --activateДля обновления всех плагинов сразу:
wp plugin update --allУправление темами
Активировать тему Reboot:
wp theme activate rebootУстановить и активировать тему JournalX:
wp theme install journalx --activateУправление пользователями
Создание пользователя с ролью редактора и заданным паролем:
wp user create wpreboot_editor editor@example.com --role=editor --user_pass=securePass123Удаление пользователя по ID:
wp user delete 15 --reassign=1Это удалит пользователя с ID 15 и переназначит его записи пользователю с ID 1.
Пример скрипта автоматического бэкапа базы данных
Можно написать bash-скрипт, который будет запускать WP-CLI для создания дампа базы и сохранять файл с датой:
#!/bin/bash
DATE=$(date +%F)
BACKUP_DIR="/var/backups/wp"
mkdir -p $BACKUP_DIR
wp db export $BACKUP_DIR/db_backup_$DATE.sql
Такой скрипт можно добавить в cron для ежедневного автоматического бэкапа.
Использование WP-CLI для очистки базы данных
Для удаления всех спам-комментариев:
wp comment delete $(wp comment list --status=spam --format=ids)Удаление всех ревизий постов (очистка базы):
wp post delete $(wp post list --post_type='revision' --format=ids) --forceСоздание собственной команды WP-CLI в стиле wpreboot
Вы можете расширить WP-CLI, добавив свои команды. Например, создадим команду для быстрой очистки кеша:
if ( ! class_exists( 'Wpreboot_Cache_Clean_Command' ) ) {
class Wpreboot_Cache_Clean_Command {
public function clear( $args, $assoc_args ) {
// Пример очистки кеша
if ( function_exists( 'wp_cache_clear_cache' ) ) {
wp_cache_clear_cache();
WP_CLI::success( 'Кеш очищен.' );
} else {
WP_CLI::error( 'Функция очистки кеша не найдена.' );
}
}
}
}
WP_CLI::add_command( 'wpreboot cache', 'Wpreboot_Cache_Clean_Command' );Такую команду можно разместить в плагине или в файле functions.php темы.
Заключение
WP-CLI значительно упрощает и ускоряет управление WordPress-сайтами, особенно при работе с большим количеством сайтов или при необходимости автоматизации задач. Использование WP-CLI совместно с плагинами из WPSHOP позволяет создавать гибкие и быстрые решения для ваших проектов.