Вопрос или проблема
Я пытаюсь использовать утилиту командной строки wp cli
, но, как и у многих других, она не работает у меня.
Сам сайт загружается без проблем.
Получение информации работает:
$ wp cli info
OS: Linux 5.4.0-54-generic #60-Ubuntu SMP Fri Nov 6 10:37:59 UTC 2020 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php7.4
PHP version: 7.4.3
php.ini used: /etc/php/7.4/cli/php.ini
WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /home/ubuntu/data/amigo/backup-1.13.2021_04-37-48_amigoco/homedir/public_html
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.4.0
Но любая другая команда просто возвращает пустую строку
Мне удалось запустить в режиме отладки, и, похоже, он завис на какой-то части. Даже пытался без плагинов и тем, но всё равно не сработало:
$ wp --debug --skip-plugins --skip-themes user list
Debug (bootstrap): Fallback autoloader paths: phar://wp-cli.phar/vendor/autoload.php (0.016s)
Debug (bootstrap): Loading detected autoloader: phar://wp-cli.phar/vendor/autoload.php (0.017s)
Debug (commands): Adding command: cache (0.023s)
Debug (commands): Adding command: transient (0.025s)
Debug (commands): Adding command: comment (0.027s)
Debug (commands): Adding command: meta in comment Namespace (0.028s)
Debug (commands): Adding command: menu (0.029s)
Debug (commands): Adding command: item in menu Namespace (0.03s)
Debug (commands): Adding command: location in menu Namespace (0.03s)
Debug (commands): Deferring command: network meta (0.031s)
Debug (commands): Adding command: option (0.032s)
Debug (commands): Adding command: post (0.033s)
Debug (commands): Adding command: meta in post Namespace (0.034s)
Debug (commands): Adding command: term in post Namespace (0.035s)
Debug (commands): Adding command: post-type (0.035s)
Debug (commands): Adding command: site (0.037s)
Debug (commands): Adding command: meta in site Namespace (0.038s)
Debug (commands): Adding command: option in site Namespace (0.039s)
Debug (commands): Adding command: taxonomy (0.039s)
Debug (commands): Adding command: term (0.041s)
Debug (commands): Adding command: meta in term Namespace (0.041s)
Debug (commands): Adding command: user (0.044s)
Debug (commands): Adding command: meta in user Namespace (0.045s)
Debug (commands): Adding command: session in user Namespace (0.045s)
Debug (commands): Adding command: term in user Namespace (0.046s)
Debug (commands): Adding command: network (0.046s)
Debug (hooks): Processing hook "after_add_command:network" with 1 callbacks (0.046s)
Debug (hooks): On hook "after_add_command:network": Closure in file phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/class-wp-cli.php at line 634 (0.046s)
Debug (commands): Adding command: meta in network Namespace (0.047s)
Debug (commands): Adding command: db (0.05s)
Debug (commands): Adding command: plugin (0.055s)
Debug (commands): Adding command: theme (0.057s)
Debug (commands): Adding command: mod in theme Namespace (0.057s)
Debug (commands): Adding command: scaffold (0.06s)
Debug (commands): Adding command: core (0.06s)
Debug (commands): Adding command: verify-checksums in core Namespace (0.061s)
Debug (commands): Adding command: verify-checksums in plugin Namespace (0.061s)
Debug (commands): Adding command: export (0.063s)
Debug (commands): Adding command: config (0.065s)
Debug (commands): Adding command: core (0.068s)
Debug (commands): Adding command: eval (0.069s)
Debug (commands): Adding command: eval-file (0.069s)
Debug (commands): Adding command: import (0.07s)
Debug (commands): Adding command: media (0.073s)
Debug (commands): Adding command: package (0.075s)
Debug (commands): Adding command: cron (0.076s)
Debug (commands): Adding command: event in cron Namespace (0.077s)
Debug (commands): Adding command: schedule in cron Namespace (0.077s)
Debug (commands): Adding command: embed (0.077s)
Debug (commands): Adding command: fetch in embed Namespace (0.078s)
Debug (commands): Adding command: provider in embed Namespace (0.079s)
Debug (commands): Adding command: handler in embed Namespace (0.079s)
Debug (commands): Adding command: cache in embed Namespace (0.079s)
Debug (commands): Adding command: i18n (0.08s)
Debug (commands): Adding command: make-pot in i18n Namespace (0.082s)
Debug (commands): Adding command: make-json in i18n Namespace (0.082s)
Debug (commands): Deferring command: language core (0.084s)
Debug (commands): Deferring command: language plugin (0.084s)
Debug (commands): Deferring command: language theme (0.085s)
Debug (hooks): Immediately invoking on passed hook "after_add_command:site": Closure in file phar:///usr/local/bin/wp/vendor/wp-cli/language-command/language-command.php at line 39 (0.085s)
Debug (commands): Adding command: switch-language in site Namespace (0.086s)
Debug (commands): Adding command: language (0.086s)
Debug (hooks): Processing hook "after_add_command:language" with 3 callbacks (0.086s)
Debug (hooks): On hook "after_add_command:language": Closure in file phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/class-wp-cli.php at line 634 (0.086s)
Debug (commands): Adding command: core in language Namespace (0.086s)
Debug (hooks): On hook "after_add_command:language": Closure in file phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/class-wp-cli.php at line 634 (0.086s)
Debug (commands): Adding command: plugin in language Namespace (0.087s)
Debug (hooks): On hook "after_add_command:language": Closure in file phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/class-wp-cli.php at line 634 (0.087s)
Debug (commands): Adding command: theme in language Namespace (0.087s)
Debug (commands): Adding command: maintenance-mode (0.088s)
Debug (commands): Adding command: rewrite (0.089s)
Debug (commands): Adding command: rewrite (0.089s)
Debug (commands): Adding command: cap (0.09s)
Debug (commands): Adding command: role (0.091s)
Debug (commands): Adding command: search-replace (0.094s)
Debug (commands): Adding command: server (0.094s)
Debug (commands): Adding command: shell (0.095s)
Debug (commands): Adding command: super-admin (0.095s)
Debug (commands): Adding command: widget (0.097s)
Debug (commands): Adding command: sidebar (0.097s)
Debug (bootstrap): Adding framework command: phar://wp-cli.phar/vendor/wp-cli/wp-cli/php/commands/cli.php (0.097s)
Debug (commands): Adding command: cli (0.1s)
Debug (commands): Adding command: cache in cli Namespace (0.1s)
Debug (commands): Adding command: alias in cli Namespace (0.101s)
Debug (bootstrap): Adding framework command: phar://wp-cli.phar/vendor/wp-cli/wp-cli/php/commands/help.php (0.101s)
Debug (commands): Adding command: help (0.102s)
Debug (bootstrap): No readable global config found (0.102s)
Debug (bootstrap): No project config found (0.102s)
Debug (bootstrap): argv: /usr/local/bin/wp --debug --skip-plugins --skip-themes user list (0.102s)
Debug (bootstrap): ABSPATH defined: /home/ubuntu/data/mysite/backup-1.13.2021_04-37-48_mysiteco/homedir/public_html/ (0.102s)
Debug (bootstrap): Begin WordPress load (0.103s)
Debug (bootstrap): wp-config.php path: /home/ubuntu/data/mysite/backup-1.13.2021_04-37-48_mysiteco/homedir/public_html/wp-config.php (0.103s)
Есть идеи, в чем может быть проблема?
У меня была похожая проблема. Проблема была решена путём смены пароля базы данных, так как в нём были символы '
.
Это связано с неправильной установкой wp CLI. Удалите старую версию и установите её снова.
https://make.wordpress.org/cli/handbook/guides/installing/
Ответ или решение
Проблема: WP-CLI не выводит данные
Если вы столкнулись с проблемой, где команда WP-CLI не выводит никакой информации, несмотря на то что команда wp cli info
выполняется без проблем, это может быть связано с несколькими причинами. Важно внимательно рассмотреть ваше окружение и конфигурацию WordPress. В этом ответе мы разобьем ситуацию на несколько ключевых аспектов, чтобы определить, что может быть не так.
1. Проблемы с конфигурацией базы данных
Как упоминали другие пользователи, одной из распространенных причин, по которой WP-CLI может не работать, являются проблемы с конфигурацией базы данных. Если ваш пароль базы данных содержит символы, такие как '
или сложные спецсимволы, это может вызывать ошибки, которые мьютируют вывод команд. Попробуйте изменить пароль вашей базы данных, следуя рекомендациям по созданию более простых, но крепких паролей.
2. Установка WP-CLI
Если проблема не исчезает, имеет смысл заново установить WP-CLI. Это может решить потенциальные проблемы с неправильной установкой или отсутствием необходимых файлов.
- Удалите текущую версию WP-CLI.
- Перейдите по официальной инструкции по установке WP-CLI.
- Выполните шаги, указанные в руководстве, чтобы убедиться, что установка выполнена корректно.
3. Отключение плагинов и тем
Вы уже пытались использовать команды с отключенными плагинами и темами, но иногда может потребоваться выполнение более глубокой диагностики. Попробуйте активировать стандартные темы (например, Twenty Twenty) и отключить все плагины. Это поможет вам понять, связана ли проблема с конкретным плагином или темой.
4. Проверка прав доступа
Проверьте, что у вашего веб-сервера есть все необходимые права доступа для выполнения команд WP-CLI. Например, если вы работаете с ElestX, убедитесь, что пользователь, под которым выполняется WP-CLI, имеет доступ к файловым и системным директориям WordPress.
5. Логи и ошибки
Когда вы запускаете WP-CLI в режиме отладки, как в вашем примере, обратите внимание на вывод, который может указывать на ошибки. В частности, убедитесь, что путь до wp-config.php
корректен, и файл доступен для чтения.
Если команда, возможно, зависает на этапе загрузки WordPress, вы можете попробовать проверить логи ошибок PHP, серверные логи, а также логи WordPress, если они включены.
6. Версия PHP и настройка окружения
Проверьте, что версия PHP соответствует требованиям для вашей версии WordPress и WP-CLI. Возможно, что у вас установлена старая версия PHP или существуют несовместимости в конфигурации PHP (например, модули или настройки).
Заключение
Если у вас по-прежнему возникают трудности даже после всех этих шагов, возможно, полезно обратиться за поддержкой на официальные форумы WP-CLI или к вашему хостинг-провайдеру. Помните, что каждый случай уникален, поэтому важно оставаться терпеливым и методично тестировать каждое из возможных решений.
Если у вас есть дополнительные детали по вашей проблеме, не стесняйтесь делиться ими для более точного анализа.