wp-cliは、WordPressのコマンドラインツール。コマンドで WordPress やデータベースの様々な操作ができる。仮想環境なら、仮想マシンにログインした状態で実行する。
» エックスサーバー(XServer)で SSH接続し、PHP のバージョン切替えと WP-CLI のインストールをするまでの手順
wp-cli コマンドの一例
プラグイン
-
wp plugin install broken-link-checker contact-form-7 --activate
インストール。--activate オプション付けると有効化 -
wp plugin activate wp-multibyte-patch
プラグインの有効化 -
wp plugin deactivate broken-link-checker
プラグインの無効化 -
wp plugin uninstall akismet hello
アンインストール。無効化した後で。jetpack は手動で wp-content/plugins/jetpack ディレクトリを削除する必要がある -
wp plugin status
インストールされたプラグインの一覧と状況。頭にAがあるものは有効化されているもの、Uが付いてるものはアップデートが出てるもの -
wp plugin search
プラグイン検索
アップデート
-
wp core update && wp plugin update --all && wp theme update --all && wp core language update
色々まとめてアップデート -
wp plugin update --all
全てのプラグインをアップデート -
wp plugin update addquicktag contact-form-7
特定のプラグインをアップデート -
wp plugin update contact-form-7 --version=バージョン
特定バージョンへのアップデート/ダウンデート ※ダウングレードもこれ -
wp core language update
翻訳ファイルのアップデート -
wp core check-update
WordPress本体のアップデートが出てないか確認 -
wp core update
WordPress本体を最新版にアップデート(wp-cliもアップデートすること) -
wp core update
wp core update-db
wp core language install ja
WordPress本体を最新バージョンにアップデート -
wp core update --version=4.0.1 --force
WordPress本体を指定バージョンにする。アップデートで不具合が起き戻すときに。--forceが必要らしい。 -
wp core download --locale=ja --path=/var/www/html/wordpress --version=4.5.2 --force
パスやバージョンを指定してwp本体をインストール。--force 付けると存在するファイルを上書き
メディア
-
wp media regenerate --yes
サムネイル画像の再生成。Imagick か GD が必要。 --skip-delete で現在ある画像を削除せず残す -
wp media import ~/Pictures/**\/*.jpg
ホーム/Picturesにあるjpg画像を全てWordPressにインポート。オプション一例、--title=タイトル、--caption=キャプション、--alt=代替テキスト
例)wp media import ~/Downloads/image.png --post_id=123 --title="A downloaded picture" --featured_image
テーマ
-
wp theme status
インストールされたテーマの一覧と状況。頭に付いてる文字の意味はプラグインのそれと同じ -
wp theme update --all
全てのテーマをアップデート - その他、プラグインとほぼ同じ
-
wp theme activate twentysixteen
テーマの切り替え
記事、タクソノミー
-
wp post list --field=post_title --post_type=page
固定ページ記事の記事タイトル一覧を表示 ★★表示項目の複数指定どうする?--fieldはカンマじゃダメ(--post_typeはいけた) -
wp term create category 'テスト' --slug=test
カテゴリ登録 -
wp term update category 4 --name=Sample --slug=sample
カテゴリ更新 -
wp user list
ユーザーの一覧
wp-cli
-
wp cli version
バージョン表示(:q で抜ける) wp cli info
-
wp cli check-update
アップデートがあるかチェック -
wp cli update
wp-cliのアップデート。--nightly 付けるとナイトリービルド版(リリース前開発中の最新版)。エラーが出る場合、-allow-root オプション付けるとうまくいく?
scaffold
-
wp scaffold vccw wordpress.dev --lang=ja
コマンド一つで VCCW環境を構築(https://qiita.com/miya0001/items/687d142d714b1386a44f) -
wp scaffold _s sample-theme --theme_name="Sample Theme" --author="John Doe"
_s ベースのテーマを生成 -
wp scaffold post-type movie --label=Movie --theme=simple-life
カスタム投稿タイプの雛形を生成。指定のテーマフォルダ内に post-types/movie.php が生成される -
wp scaffold plugin sample-plugin
プラグインの雛形を生成
テキスト置換
シリアライズされたデータも正常に置換してくれる。
下のサンプルは URL置換の例。
※ URL末尾に/(スラッシュ)を入れないこと
WordPressの引っ越しに便利な wp search-replace – Gatespace's Blog
-
wp search-replace --dry-run 'http://dev.example.com' 'https://example.com'
まずはドライランでチェック -
wp search-replace 'http://dev.example.com' 'https://example.com'
置換する
データベース操作
-
wp db export /var/www/html/db-backup/wordpress.sql
データベースのエクスポート [サンプル] (https://developer.wordpress.org/cli/commands/db/export/) ※仮想マシンなら共有フォルダを指定 -
wp db import /var/www/html/db-backup/wordpress.sql
データベースのインポート -
wp db create
wp-config.php に基づき新しくデーターベースを作成 -
wp db drop
存在するデータベースを削除 -
wp db reset
データベースからすべてのテーブルを削除 -
wp db columns wp_posts
指定テーブルの情報を表示(例は wp_posts) -
wp db cli
MySQL コンソールを開く オプション -
wp db query
SQLクエリを実行 -
wp db check
データベースのステータスチェック -
wp db tables
データベース中のテーブルを表示 -
wp db prefix
WordPressデータベースのプレフィックスを表示 -
wp db size
データベースのサイズを表示 -
wp db search キーワード
データベースから文字列検索 オプション -
wp db repair
データベースの修復 -
wp db optimize
データベースの最適化 -
wp db clean
$table_prefix の付いたテーブルを全削除
その他
-
wp rewrite flush
リライトルール変更後に反映させるためのflush -
wp help
wp help cli
ヘルプ
ホストマシン(Mac)から直接実行
仮想マシンにログインせず、ホストマシン(Mac)から直接実行することもできる
vagrant ssh -c "wp plugin list"
vagrant ssh -c "wp plugin update --all"