昨日 wp cli を利用しようとしたところ、以下のようなエラーが発生してしまった。
$ wp cli version
PHP Fatal error: Uncaught TypeError: implode(): Argument #2 ($array) must be of type ?array, string given in phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/DocParser.php:75
Stack trace:
(省略)
thrown in phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/DocParser.php on line 75
最近サーバーの PHP のバージョンを 7.4 から 8.4 にアップグレードしたことが原因だろう。wp cli もアップデートしなければならない。
wp cli のアップデートは wp cli update
というコマンドで実行できるらしいのだが、そもそも wp コマンドが動かないのでは意味がないため。そのため、wp cli をインストールしなおすことにした。
GitHub - wp-cli/wp-cli: ⚙️ WP-CLI framework
GitHub のページにあるようにコマンドを実行して元のコマンドを上書きすれば良い。
$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 6882k 100 6882k 0 0 9768k 0 --:--:-- --:--:-- --:--:-- 9763k
$ chmod +x wp-cli.phar
$ sudo mv wp-cli.phar /usr/local/bin/wp
$ wp --info
OS: Linux 6.8.0-57-generic #59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php8.4
PHP version: 8.4.5
php.ini used: /etc/php/8.4/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.41-0ubuntu0.24.04.1 for Linux on x86_64 ((Ubuntu))
SQL modes:
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/ryomatsu
WP-CLI packages dir:
WP-CLI cache dir: /home/ryomatsu/.wp-cli/cache
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.11.0
これで問題なく wp コマンドが利用可能になった。
コメント