1. Home
  2. Wordpress
  3. WP-CLI – инструмент командной строки для управления WordPress
  1. Home
  2. Техническое
  3. WP-CLI – инструмент командной строки для управления WordPress

WP-CLI – инструмент командной строки для управления WordPress

WP-CLI – это официальный инструмент командной строки для управления сайтами WordPress. Для многих видов деятельности он является более удобной и быстрой альтернативой панели управления WordPress.

Доступ к утилите командной строки WP-CLI осуществляется через терминал путем установления SSH-соединения с вашим виртуальным сервером. Подробнее вы можете прочитать здесь: Подключение через протокол SSH.

Здесь мы рассмотрим некоторые полезные команды WP-CLI.

Все команды с пояснениями и примерами можно увидеть как на веб-сайте WP-CLI, так и в командной строке.

Чтобы увидеть все команды, введите:

> wp

или

> wp help

Команды WP-CLI сгруппированы в категории по видам деятельности.
Каждая так называемая основная категория имеет свои подкоманды и опции.

Чтобы просмотреть основные команды, введите:

> wp core

Чтобы просмотреть объяснение команды с примерами, введите:

> wp help core update

 

Конфигурация WordPress

Посмотреть версию WordPress:

> wp core version

Просмотрите конфигурацию:

> wp config list

Поиск только данные базы данных:

> wp config list DB_

Просмотр одного конкретного параметра конфигурации:

> wp config get DB_NAME

Изменение настроек конфигурации:

> wp config set DB_NAME db_name

Просмотр состояния, активация и деактивация режима технического обслуживания:

> wp maintenance-mode status
> wp maintenance-mode activate
> wp maintenance-mode deactivate

Установка и обновление WordPress

Загрузите файлы WordPress, указав версию и отбросив тему и плагины по умолчанию:

> wp core download --version=5.5.3 --skip-content

Установите WordPress за 5 секунд (предварительно необходимо добавить данные о базе данных в файл wp-config.php):

> wp core install --url=domain.tld --title='Uus sait' --admin_user=nimi --admin_email=nimi@domain.tld

Обновите WordPress до нужной вам версии, а затем обновите базу данных:

> wp core update --version=5.5.1
> wp core update-db

Пользователи WordPress, темы и плагины

Список всех пользователей WordPress, каждый из которых имеет свой уникальный ID:

> wp user list

Добавление пользователя с правами администратора WordPress:

> wp user create username name@domain.tld --role=administrator

Удалить пользователя (ID учетной записи = 123).
N.B. Если вы удалите пользователя, чьи сообщения не были переназначены другому пользователю с помощью опции --reassign, его сообщения также будут удалены.

> wp user delete 123
> wp user delete 123 --reassign=1234

Измените пароль пользователя. Рекомендуется импортировать пароль из файла, как показано в команде 2, чтобы он не оставался в файле истории командной строки (ID пользователя = 123):

> wp user update 123 --user_pass=new-and-long-password
> wp user update 123 --prompt=user_pass < user_password.txt

Список всех плагинов, статус, номер версии и наличие обновлений:

> wp plugin list

Обновление плагинов (обновление определенного плагина и обновление всех плагинов):

> wp plugin update hello
> wp plugin update --all

Деактивация определенного плагина может быть временным решением для восстановления сайта, если WordPress стал недоступен (отображается сообщение об ошибке PHP) после обновления WordPress или плагина. Это также может быть решением, если вы больше не можете получить доступ к странице администрирования WordPress, а на ней отображается название плагина.
Деактивация плагина:

> wp plugin deactivate plugin-name

Список всех тем, статус, номер версии и наличие обновления:

> wp theme list

Обновление тем:

> wp theme update twentytwenty

Действия, связанные с базой данных WordPress

Сохранение базы данных в файл. Быстрый и удобный способ резервного копирования базы данных (рекомендуется создавать резервные копии базы данных перед внесением в нее серьезных изменений):

> wp db export

Импорт базы данных из файла:

> wp db import dbname-2020-01-01-abcd1234.sql

Поиск в базе данных по определенному тексту:

> wp db search 'find this text'

Замена данных в базе данных.

Если вам нужно увидеть, что и в каких таблицах изменит замена, прежде чем вносить изменения, добавьте к команде опцию: --dry-run
Если текст для поиска или замены содержит пробелы или специальные символы, то его необходимо заключить в кавычки:

> wp search-replace --report-changed-only --dry-run --skip-columns=guid 'search this' 'replace with this'

Откройте командную строку mysql (информация для подключения к базе данных берется из файла wp-config.php):

> wp db cli

Изменение URL-адреса WordPress

Вам может понадобиться изменить URL WordPress при переносе WordPress с одного сервера на другой, с поддомена на основной домен или наоборот.
URL-адрес сайта WordPress задается в таблице базы данных options с полями home и siteurl.
Кроме того, доменное имя обычно содержится в других таблицах и файлах базы данных.

Посмотрите URL текущего сайта WordPress:

> wp option get home
> wp option get siteurl

Изменение URL-адреса сайта WordPress:

> wp option update home https://domain.tld

изменить siteurl – URL-адрес директории, в которую установлен WordPress.
siteurl – это тот же home URL, если WordPress установлен в корневой директории домена.
Если WordPress установлен в подкаталоге, например, “blog”, то значение siteurl будет https://domain.tld/blog.

> wp option update siteurl https://domain.tld

Замена старого URL во всей базе данных (кроме таблицы posts в столбце guid).
Прежде чем вносить изменения, рекомендуется проверить, в каких таблицах будет произведено изменение. Как только вы получите представление о таблицах, снимите флажок --dry-run, чтобы внести изменения:

> wp search-replace --report-changed-only --dry-run --skip-columns=guid https://old.tld https://new.tld

Если старый домен необходимо заменить на новый и в файлах, и нужно внести много изменений, то замену можно выполнить из командной строки.
Перед заменой старого доменного имени необходимо узнать, можно ли это сделать для всех файлов или только для определенных каталогов и типов файлов.
Чаще всего нет необходимости производить замену в буферных и лог файлах. Файлы буфера могут быть удалены как вручную, так и через админ-панель WordPress.
Соответственно, вы должны подготовить команду замены.
Найдите старый домен всех файлов и выведите имена этих файлов (при необходимости опустите https:// перед именем домена):

> grep -irl 'https://old.tld' ./

Поиск в старом домене файлов с определенными расширениями (используйте опцию --include, чтобы настроить список расширений файлов в соответствии с вашими потребностями):

> grep -irl --include \*.php --include \*.html --include \*.css 'https://old.tld' ./

Замените старый домен на новый в файлах с определенным расширением (в данном примере – в файлах PHP):

> find ./ -name '*.php' -exec sed -i 's~https://old.tld~https://new.tld~g' {} \;

Контрольные суммы файлов WordPress

Иногда необходимо проверить, не были ли изменены файлы WordPress. Это часто является признаком взломанного WordPress. Это можно сделать с помощью следующих двух команд:
Проверить файлы ядра WordPress:

> wp core verify-checksums

Проверьте файлы плагинов WordPress:

> wp plugin verify-checksums --all
Updated on 23. Apr 2024
Was this article helpful?

Related Articles