FTPやSFTPが使えない環境でWordPressのコアとプラグインをアップデートするための逃げ道
FTPが設定されておらず、SSHも特定IPからのみ特定のユーザー名で入れるだけという素敵なサーバで運用されているWordPressって、アップデートが死ぬほど面倒臭いですよね。
バックアップとって、DBのdumpをしておいて、プラグインを全部一旦無効化。その後アップデートファイルをアップして・・・ああもう、それだけで軽く萎える!というのは間違いないと思います。
最初はSSH経由でいこうかと思ったのですが、何かとサーバを設定しなきゃいけないことが多く、稼働中のサーバであまり触りたくないなあ・・・ということもあり、今回はWP−CLIを使って、コアとプラグインのアップデートを行いました!
これなら、バックアップさえきちんと取ってあればサクサクアップデートできますよ!
WP-CLIのインストール
非常にわかりやすいインストール方法の解説があったのでこちらで。
わーどぷれすっ! | WP-CLIの使い方: その壱 – インストールと簡単な使い方の例
http://wp.tekapo.com/how-to-use-wp-cli/how-to-use-wp-cli-install-and-example/
WP本体とデータベースのアップデート
以下は本体のバージョンを確認後、本体のアップデートを行い、再度バージョンを確認、最後にデータベースをアップデートする例です。
# wp core version --extra WordPress version: 3.8.1 Database revision: 26691 TinyMCE version: 3.59 (359-20131026) Updating to version 4.0.1 (ja)... https://downloads.wordpress.org/release/ja/wordpress-4.0.1.zip から更新をダウンロードしています... 更新を展開しています… Success: WordPress updated successfully. # wp core version --extra WordPress version: 4.0.1 Database revision: 29630 TinyMCE version: 4.104 (4104-20140822) # wp core update-db Success: WordPress database upgraded successfully.
時間も全然かからず、あっと言う間に完了します。
プラグインのアップデート
プラグインのアップデートも簡単です。
まずはプラグインディレクトリにあるプラグインを確認します。
# wp plugin status 23 installed plugins: UA akismet 2.5.9 (以下略)
Uがついているものがアップデートのあるものなので、
# wp plugin update akismet
のように名前を指定するか、まとめて全部アップデートする場合は
# wp plugin update --all
のように打ち込めば、プラグインのアップデートが以下のようにはじまります!
メンテナンスモードを有効にします… https://downloads.wordpress.org/plugin/akismet.3.0.3.zip から更新をダウンロードしています... 更新を展開しています… 最新のバージョンをインストールしています… プラグインの古いバージョンを削除しています… プラグインの更新に成功しました。
こんな感じで一気にアップデートされます。
サーバによっては、アップデートが大仕事になることもあるかと思います。
通常のホスティングサービスでは困ることはなかなかないのですが、FTPがない、あってもIP制限がかかっている、SSHはあっても、認証鍵などを別途設定しなくてはいけない、などなどの際は、WP−CLIでアップデートをコマンドラインから行うという選択もアリなのではないでしょうか。
常に最新版を維持することが、セキュリティの第一歩!
アップデートを忘れずに、安全なWPライフを!
本来の目的とはなんか違う気もしますが、これでいけるよ!というお話でした。