wordpress-setup について
wordpress-setupは、コンテンツ管理やElementor編集に向けて、WordPressサイトへの接続を設定し、アクセスを確認するスキルです。WP-CLI over SSHまたはREST APIでの接続を案内し、再利用できるサイト設定を保存します。
主な機能
- 01WP-CLIの確認と設定
- 02SSHまたはREST APIで接続
- 03サイトとコンテンツへのアクセス確認
- 04再利用可能なサイト設定の保存
活用シーン
- 01リモートWordPressサイトへの接続設定
- 02ページやプラグインへのアクセス確認
- 03他のスキル向けのサイト設定準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jezweb/ claude-skills --skill wordpress-setupインストール後、Claude Code で/wordpress-setupを入力して読み込まれたか確認します。
同梱ファイルreferences/wp-cli-essentials.md
詳細
WordPress のセットアップ
WordPress サイトに接続し、WP-CLI または REST API を使って正常にアクセスできることを確認します。コンテンツ管理と Elementor の編集にすぐ使える、検証済みの接続設定を作成します。
ワークフロー
ステップ 1:WP-CLI を確認する
wp --version
インストールされていない場合は、ユーザーに次の手順を案内します。
# macOS/Linux
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
また、SSH 拡張機能が利用可能であることも確認します(リモートサイトで必要です)。
wp package install wp-cli/ssh-command
ステップ 2:サイトに接続する
オプション A:SSH 経由の WP-CLI(推奨)
wp --ssh=user@hostname/path/to/wordpress option get siteurl
一般的なパターン:
- Rocket.net:
wp --ssh=user@hostname/www/sitename/public option get siteurl - cPanel:
wp --ssh=user@hostname/public_html option get siteurl - カスタム:SSH ユーザー、ホスト、WordPress のパスをユーザーに確認します
まず、簡単なコマンドでテストします。
wp --ssh=user@host/path core version
オプション B:アプリケーションパスワードを使った REST API
SSH を利用できない場合:
https://example.com/wp-admin/profile.phpに移動します(またはブラウザー自動化を使用します)- 「アプリケーションパスワード」セクションまでスクロールします
- 名前(例:「Claude Code」)を入力し、「新しいアプリケーションパスワードを追加」をクリックします
- 生成されたパスワードをコピーします(空白もパスワードの一部ですが、認証時は省略できます)
接続をテストします。
curl -s https://example.com/wp-json/wp/v2/posts?per_page=1 \
-u "username:xxxx xxxx xxxx xxxx xxxx xxxx" | jq '.[0].title'
ステップ 3:認証情報を保存する
WP-CLI SSH の場合 — プロジェクトのルートに wp-cli.yml を作成します。
ssh:
sitename:
cmd: ssh -o StrictHostKeyChecking=no %pseudotty% user@hostname %cmd%
url: /path/to/wordpress
その後、次を使用します:wp @sitename option get siteurl
REST API の場合 — .dev.vars に保存します。
WP_SITE_URL=https://example.com
WP_USERNAME=admin
WP_APP_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx
.dev.vars が .gitignore に含まれていることを確認します。複数のプロジェクトで使う場合は、お好みのシークレットマネージャー(環境変数、1Password CLI など)に保存します。
ステップ 4:すべてのアクセスを確認する
包括的なチェックを実行します。
# Site info
wp @sitename option get siteurl
wp @sitename option get blogname
# Content access
wp @sitename post list --post_type=page --posts_per_page=5 --fields=ID,post_title,post_status
# Plugin status (check for Elementor)
wp @sitename plugin status elementor
# Theme info
wp @sitename theme status
ステップ 5:サイト設定を保存する
他のスキルから参照できるように wordpress.config.json を作成します。
{
"site": "example.com",
"siteUrl": "https://example.com",
"accessMethod": "ssh",
"sshAlias": "sitename",
"wpPath": "/path/to/wordpress",
"hasElementor": true,
"elementorVersion": "3.x.x"
}
重要なパターン
SSH 接続の問題
| 症状 | 対処方法 |
|---|---|
Permission denied (publickey) | SSH キーを確認します:ssh -v user@host |
SSH 経由で wp: command not found | リモートの PATH に WP-CLI がありません — フルパスを使用します:/usr/local/bin/wp |
Error: This does not appear to be a WordPress installation | パスが間違っています — wp-path 引数を確認します |
| 大規模な操作でタイムアウトする | --ssh=user@host/path --allow-root を追加するか、SSH のタイムアウトを延長します |
WP-CLI エイリアス
頻繁にアクセスするサイトには、~/.wp-cli/config.yml でエイリアスを定義します。
@client1:
ssh: [email protected]/www/public
@client2:
ssh: [email protected]/www/client2/public
その後:wp @client1 post list
REST API の注意点
- アプリケーションパスワードには HTTPS が必要です(HTTP では動作しません)
- セキュリティプラグインによって REST API がブロックされる場合があります — 401/403 レスポンスが返されないか確認します
- キャッシュプラグインが古い REST レスポンスを返す場合があります —
?_=${timestamp}のキャッシュバスターを使用します - カスタム投稿タイプを API に表示するには、
show_in_rest: trueが必要です
参考ファイル
references/wp-cli-essentials.md— SSH エイリアスのパターン、一般的なフラグ、トラブルシューティング