Вопрос или проблема
На Ubuntu 20.04 Linode у меня установлена платформа WordPress. Я разворачиваю веб-сайт, используя https://github.com/Mixd/wp-deploy, инструмент для развертывания Capistrano. Когда сайт разворачивается, структура папок выглядит так:
- Папка
current
указывает на фактический релиз (виртуальный хост указывает на эту папку) - Внутри
current
находятся:- папка
wordpress
со всеми основными файлами WordPress - и папка
content
, которая переименована изwp-content
и содержит плагины, темы и загруженные файлы
- папка
В файле wp-config.php определены:
define('WP_CONTENT_URL', 'https://website.com/content');
define('WP_SITEURL','https://website.com/wordpress');
WP CLI установлен и работает со своими базовыми командами. Развертывание не вызывает проблем и работает с использованием команд WP CLI.
Проблема возникает, когда я пытаюсь использовать команды WP CLI, определенные установленными плагинами, такими как WP All Import. Ошибка, которую я получаю:
Error: 'all-import' is not a registered wp command. See 'wp help' for available commands.
Запуская wp help
, он не перечисляет никакие команды плагинов. Вместо этого на моем компьютере выводятся все команды.
Я предполагаю, что это связано с другой структурой папок, но не могу найти решение. Мне нужно иметь возможность запускать, например, wp all-import run ID
для выполнения импорта из командной строки, так как это значительно быстрее, и мне нужно отредактировать 90 тыс. товаров.
Пожалуйста, смотрите пост о выпуске WP-CLI версии 2.0, для использования всех команд удалите wp-cli/wp-cli
и подключите wp-cli/wp-cli-bundle
.
Ответ или решение
При возникновении проблемы с распознаванием плагин-команд WP CLI на Ubuntu 20.04 с установленной WordPress на Linode, важно учесть несколько ключевых аспектов, связанных с конфигурацией и структурой файлов. Давайте разберемся в возможных причинах и способах их устранения.
Проблемное описание
Использование WP CLI для выполнения команд, определяемых плагинами, такими как WP All Import, может вызывать ошибку 'all-import' is not a registered wp command
. Это случается, когда WP CLI не может найти команды плагинов из-за структуры директорий или конфигурационной ошибки.
Возможные причины
-
Структура директорий:
- Ваш рабочий проект развернут с использованием Capistrano, и структура директорий изменена. Директория
wp-content
переименована вcontent
, что может быть причиной проблемы, если WP CLI не может обнаружить плагины в этой директории.
- Ваш рабочий проект развернут с использованием Capistrano, и структура директорий изменена. Директория
-
Конфигурация сайта:
- В вашем
wp-config.php
файл указаны настройки пути:define('WP_CONTENT_URL', 'https://website.com/content'); define('WP_SITEURL','https://website.com/wordpress');
Убедитесь, что URL и физические пути соответствуют фактической структуре директорий.
- В вашем
-
Версия WP CLI:
- Убедитесь, что используется комплект
wp-cli/wp-cli-bundle
, так как с версии 2.0.0 рекомендуемое управление с WP-CLI осуществляется через этот пакет. Это обеспечивает доступ ко всем плагин-командам и основным функциям.
- Убедитесь, что используется комплект
Диагностика и решения
-
Проверка правильности конфигурации:
- Проверьте, что в
wp-config.php
правильно указаны пути до контента и сайт. Может потребоваться проверить физическое расположение папок на сервере, используя команды типаls
для подтверждения путей.
- Проверьте, что в
-
Обновите WP-CLI:
- Проверьте текущую версию WP-CLI:
wp --version
- Если установлен
wp-cli/wp-cli
, замените наwp-cli/wp-cli-bundle
:composer global require wp-cli/wp-cli-bundle
- Проверьте текущую версию WP-CLI:
-
Проверка установки плагинов:
- Убедитесь, что все необходимые плагины установлены и активированы. Это можно сделать через интерфейс WP или использовав WP CLI:
wp plugin list --status=active
- Убедитесь, что все необходимые плагины установлены и активированы. Это можно сделать через интерфейс WP или использовав WP CLI:
-
Журнал ошибок и отладка:
- Обратите внимание на сообщения об ошибках в серверных логах, чтобы убедиться, что проблема не связана с загрузкой плагинов или разрешениями на файлы.
Вывод
Следуя этим рекомендациям, вы должны суметь устранить проблему с распознаванием плагин-команд в WP CLI. Обеспечение корректной конфигурации и обновление до поддерживаемых версий является ключевым моментом. Важным шагом также является убеждение в правильной структуре директорий и проверка активированных плагинов, что позволяет WP CLI успешно находить и выполнять необходимые команды.