Как управлять WordPress из командной строки с помощью WP-CLI

Опубликовано: 2019-01-23

Ранее в этом месяце я опубликовал пост о том, как установить, настроить и использовать Docker в локальной разработке WordPress. Главным преимуществом Docker были его контейнеры: каждая установка WordPress была инкапсулирована и изолирована от других. Эти контейнеры запускались с помощью файла конфигурации и простой команды: docker-compose up -d .

Когда вы впервые запускали контейнер Docker с WordPress, вам нужно было пройти процесс установки WordPress:

Установка WordPress в контейнер Docker
Установка WordPress на контейнер Docker.

После написания этого поста я подумал, что было бы здорово дополнить его другим инструментом, который помогает нам управлять установками WordPress из самой командной строки. Ну, не ждите больше! Сегодня я собираюсь научить вас, как использовать WP-CLI для управления установками WordPress из консоли.

Что такое WP-CLI?

Командная строка — лучший друг каждого разработчика. WP-CLI (интерфейс командной строки WordPress) переносит управление и обслуживание WordPress в нашу командную строку и является незаменимым компонентом для любого разработчика, который хочет серьезно оптимизировать свое время. С WP-CLI вы сможете обновлять плагины, настраивать многосайтовые установки и многое другое без использования веб-браузера.

Установка WP-CLI

В документации проекта объясняется, как установить WP-CLI. Есть много вариантов сделать это, но самый простой — загрузить исполняемый файл напрямую:

и запустите его с помощью PHP:

Если мы хотим использовать команду более «дружественным» способом, мы можем дать ей права на выполнение и переместить ее в какой-нибудь каталог, который находится в нашем $PATH :

и с этого момента мы можем запустить команду следующим образом:

Кстати, не забудьте запустить wp из корневого каталога WordPress:

WP-CLI и Докер

Предположим, вы заинтересованы в использовании WP-CLI для управления различными проектами, с которыми вы работаете. Если вы следовали моему руководству несколько недель назад, вы, вероятно, уже используете Docker. Итак, вопрос: как вы можете использовать WP-CLI и Docker вместе? Можно ли запустить WP-CLI в ваших контейнерах WordPress Docker?

В идеале образ WordPress, который мы используем в Docker, должен включать WP-CLI. К сожалению, на момент написания этого поста официальное изображение не включало WP-CLI (и добавить его может быть непросто). Но не волнуйтесь! Есть и другие образы, которые мы можем использовать, которые включают WP-CLI из коробки. Вместо этого:

используйте следующее изображение:

Вот и все! Запуск docker-compose up -d загрузит новый образ WordPress, который включает двоичный файл WP-CLI.

Единственная проблема, которая у нас сейчас есть, это то, что WP-CLI находится внутри контейнера (т.е. «гостевой машины»), а мы используем наш терминал на «хост-машине». Как нам получить к нему доступ?

Чтобы выполнить гостевую команду с нашего хоста, мы должны использовать docker-compose следующим образом:

Например, предположим, что я работаю над нашим плагином Nelio Content, который находится у меня в каталоге с именем nelio-content . В файле docker-compose.yml , который я создал для этого проекта, я определил две службы: одну для WordPress (которую я назвал wordpress ), а другую для базы данных MySQL ( mysql ). Что ж, поскольку WP-CLI находится в контейнере WordPress, мы запускаем его следующим образом:

Наконец, если вы хотите использовать более дружественную версию, создайте следующий псевдоним:

и вы сможете запустить команду, используя всего две простые буквы:

Команды WP-CLI

Теперь, когда у нас установлен WP-CLI и мы знаем, как его вызывать, пришло время увидеть несколько примеров того, что он позволяет нам делать.

Как выглядят команды WP-CLI

В целом команды WP-CLI следуют следующему шаблону:

В документации есть информация обо всех доступных командах, их параметрах и способах их использования. Не забудьте иметь его под рукой, чтобы обращаться к нему, когда вам это нужно.

Управление WordPress

Установка WordPress…

Как я уже говорил во введении, первое, что вам нужно сделать при запуске нового контейнера Docker с WordPress, — это завершить процесс установки WordPress. С WP-CLI это так же просто, как выполнить следующую команду:

Обновление WordPress…

Если вы хотите перейти на последнюю версию WordPress, просто запустите это:

И если мы хотим вернуться к более старой версии, мы можем сделать это с помощью следующей команды:

Управление плагинами

Еще одна распространенная задача, с которой мы сталкиваемся при работе с WordPress, — это управление плагинами. Например, сразу после того, как мы запустили новый образ Docker с WordPress, мы увидим, что этот образ включает в себя несколько плагинов, которые могут нас не интересовать. Как мы узнаем, какие плагины установлены? Как мы избавимся от них? Как нам активировать те, которые мы хотим?

Список установленных плагинов…

Если вы хотите увидеть плагины, установленные на вашем сайте, запустите подкоманду list команды plugin :

В моем случае это возвращает:

Удаление плагинов…

Чтобы удалить плагины, которые вам больше не нужны, просто вызовите wp plugin delete и укажите плагины, которые вы хотите удалить:

Активация плагинов…

И чтобы активировать плагин, повторите процесс, но вместо этого используйте подкоманду activate :

Установка плагинов…

Чтобы установить новый плагин, выполните следующее:

и WordPress загрузит плагин из каталога плагинов на WordPress.org и автоматически активирует его. Легко, не так ли?

Управление темами

Управление темами очень похоже на управление плагинами: мы можем перечислить установленные темы, переключить их на активные, удалить и т. д. Например, чтобы вывести список доступных тем, у нас есть следующая команда:

что дает нам следующий результат:

В этом примере текущая активная тема — двадцать семнадцать . Как бы вы переключили его на двадцать девятнадцать ? Это очень просто:

Что, если мы хотим обновить все темы, для которых доступны обновления? Это тоже очень просто:

Как это круто? ?

И что теперь?

Это было краткое введение в использование WP-CLI. Если вы хотите глубже изучить возможности, которые он предлагает, на WordPress.org вы найдете всю документацию об этом инструменте: как его установить, как его настроить и как его использовать. Я рекомендую вам внимательно прочитать документацию и продолжить самостоятельно открывать для себя потенциал WP-CLI.

Избранное изображение Ханны Джошуа на Unsplash.