wp-cliをレンタルサーバーにインストールしてみた

このサイトでも利用しているWordPress。
Web画面でいろいろ操作して記事投稿やカスタマイズをすることができますが、コマンドラインでも操作ができるのです。それが「wp-cli」。

詳しい説明は公式サイト(wp-cli.org)にお任せして、インストールする方法のみを記します。

なお、サーバー上でコマンドラインを直接実行するので、SSH接続が可能なサーバーに限ります。
※このサイトを設置するサービスはSSH接続が提供されていない。。

  1. SSHにログインして~/binディレクトリを作成
    $ md ~/bin
  2. ~/binディレクトリに移動
    $ cd ~/bin
  3. ~/bin にwp-cliをダウンロード
    $ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
  4. 以下のコマンドで動作を確認
    $ php wp-cli.phar --info
    PHP binary:     /usr/bin/php
    PHP version:    5.4.16
    php.ini used:   /etc/php.ini
    WP-CLI root dir:        phar://wp-cli.phar
    WP-CLI packages dir:    /home/********/.wp-cli/packages/
    WP-CLI global config:
    WP-CLI project config:
    WP-CLI version: 1.1.0
  5. ~/.bashrc にエイリアスを追記し、「wp」でコマンドが実行できるようにする
    $ vi ~/.bashrc
    alias wp='/usr/bin/php7.1 ~/bin/wp-cli.phar'
  6. (無ければ) ~/.bash_profile を作成
    $ vi ~/.bash_profile
    export PATH="$PATH:$HOME/bin"
    
    if [ -f ~/.bashrc ]; then
            source ~/.bashrc
    fi
  7. ~/.bash_profile を再読込する
    $ source ~/.bash_profile

以上の作業で、「wp」のみでwp-cliが実行できるようになる。

なお、利用するサーバーによっては複数のPHPバージョンが提供されており、以下のコマンドでは期待するバージョンで動作しないことがある。

$ php wp-cli.phar

そのため、以上の手順では .bashrc へのエイリアスを追記する内容において、「php」の代わりにPHP7.1のパスを入れている。

alias wp='/usr/bin/php7.1 ~/bin/wp-cli.phar'

この設定が反映すると、以下のとおりwpのみで実行できるようになり、動作テストの結果において、PHPのバージョン表示も変わる。

$ wp --info
PHP binary:     /usr/bin/php
PHP version:    7.1.4
php.ini used:   /etc/php.ini
WP-CLI root dir:        phar://wp-cli.phar
WP-CLI packages dir:    /home/********/.wp-cli/packages/
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 1.1.0

PHPバージョンによる正しいパスは、サーバーの提供元に確認することをお勧めする。

この記事を書いた人

KEISUKE HORIE