WordPressプラグインを審査に出す前の準備【後編】

WordPress WordPress
  1. WordPressプラグインを審査に出す前の準備【後編】差し戻し対応から公開まで
  2. 8. 提出フォームでの入力(slugは一生モノ!)
    1. 8-1. 提出ページにアクセス
    2. 8-2. 入力項目
    3. 8-3. ⚠️ slug(パーマリンク)は承認後に変更できない
    4. 8-4. slug変更のチャンス(審査開始前のみ)
    5. 8-5. 提出後の流れ
  3. 9. 差し戻しメールが来たら:まずやること
    1. 9-1. まず翻訳して「要件」を抜き出す
    2. 9-2. よくある指摘パターン
    3. 9-3. 指摘の「優先順位」を決める
  4. 10. 差し戻し対応の正しい流れ(ここが重要!)
    1. 10-1. 正しい再提出フロー
    2. 10-2. 提出ページへのアクセス方法
    3. 10-3. メールでの返信(短く、でも明確に)
  5. 11. 返信テンプレート(英語・コピペOK)
    1. 11-1. 基本テンプレート
    2. 11-2. 具体的な修正例を入れたテンプレート
    3. 11-3. 質問がある場合のテンプレート
  6. 12. 承認メールが届いたら:SVN初回リリース
    1. 12-1. 承認メールの内容
    2. 12-2. SVNの基本構造
    3. 12-3. 初回リリースの手順
      1. ① SVNをインストール(まだの場合)
      2. ② リポジトリをチェックアウト
      3. ③ trunk にプラグインファイルを配置
      4. ④ assets に画像を配置
      5. ⑤ コミット(公開!)
      6. ⑥ tags にバージョンをコピー
    4. 12-4. assets の命名規則
  7. 13. アップデートの公開方法
    1. 13-1. 更新の基本フロー
    2. 13-2. コマンド例
    3. 13-3. readme.txt だけの更新
  8. 14. まとめ:差し戻しを減らす「最短の考え方」
    1. 前編・後編のポイント総まとめ
    2. 困ったときは
  9. 15. 参考リンク集
  10. おわりに

WordPressプラグインを審査に出す前の準備【後編】差し戻し対応から公開まで

前編では、提出前に整えるべき準備(アカウント、ヘッダー、readme.txt、Plugin Check、ZIP作成)を解説しました。

後編では、実際の提出から、差し戻し対応、そして承認後のSVN公開までを詳しく解説します。ここを押さえておけば、初提出でも慌てずに対応できます。

前編のおさらい:

  • WordPress.orgアカウント作成 + 2FA設定
  • プラグインヘッダーを英語で整備
  • readme.txtを英語で作成 + バリデーター検証
  • Plugin CheckでERRORをゼロに
  • 正しい構成でZIP作成

8. 提出フォームでの入力(slugは一生モノ!)

▶ ここでやること:ZIPをアップロードし、プラグイン情報を入力する

8-1. 提出ページにアクセス

🔗 提出ページ: https://wordpress.org/plugins/developers/add/

  1. WordPress.orgにログイン(2FA設定済みであること)
  2. 上記URLにアクセス
  3. 「Select a file」からZIPファイルを選択

8-2. 入力項目

項目 説明 注意点
ZIP File プラグインのZIPファイル Plugin Checkが自動実行される
Plugin Name プラグイン名 PHPヘッダーから自動取得
Description 簡単な説明 英語で記述

8-3. ⚠️ slug(パーマリンク)は承認後に変更できない

🚨 超重要:slugは一生変わりません

プラグインのslug(URLの一部)は、承認後は絶対に変更できません

例えば my-awesome-plugin というslugで承認されると:
・URL: https://wordpress.org/plugins/my-awesome-plugin/
・SVN: https://plugins.svn.wordpress.org/my-awesome-plugin/

これが永久に固定されます。提出前に以下を必ず確認してください:

  • スペルミスがないか
  • 他のプラグインと名前が被っていないか
  • 商標を侵害していないか
  • 将来的に恥ずかしくない名前か

8-4. slug変更のチャンス(審査開始前のみ)

提出直後、審査が始まる前であれば、提出ページからslugを1回だけ変更できる場合があります。ただし、審査が始まってしまうと変更不可です。

8-5. 提出後の流れ

① ZIPアップロード
② Plugin Checkが自動実行
   ├─ ERRORあり → 提出ブロック(修正してやり直し)
   └─ ERRORなし → 審査キューに入る
③ レビュー担当がチェック(1〜10営業日)
④ 問題あり → 差し戻しメール
   問題なし → 承認メール + SVNリポジトリ発行
💡 ヒント:
提出ページのFAQによると、審査は通常1〜10営業日かかります。混雑時はさらに長くなることもあります。焦らず待ちましょう。

9. 差し戻しメールが来たら:まずやること

▶ ここでやること:指摘内容を理解し、優先順位を決める

審査で問題が見つかると、plugins@wordpress.orgから英語のメールが届きます。慌てずに、以下の手順で対応しましょう。

9-1. まず翻訳して「要件」を抜き出す

メールをGoogle翻訳やDeepLにかけて、以下の情報を整理します。

抜き出すべき情報:
□ 指摘箇所(ファイル名 / 関数名 / 行番号)
□ 問題の種類(セキュリティ / ガイドライン / 品質)
□ 修正の方向性(例:escape必須 / sanitize必須 / nonce追加)

9-2. よくある指摘パターン

指摘の種類 メールでよく見るフレーズ 対処
エスケープ不足 “escape”, “esc_html”, “output” 出力にesc_*関数を追加
サニタイズ不足 “sanitize”, “validate”, “input” 入力にsanitize_*関数を追加
Nonce不足 “nonce”, “CSRF”, “verification” wp_nonce_field/wp_verify_nonceを追加
権限チェック不足 “capability”, “permission”, “current_user_can” current_user_canでチェック追加
プレフィックス問題 “prefix”, “unique”, “generic” 関数名/クラス名に独自プレフィックスを追加
外部通信 “external”, “remote”, “tracking” 意図の説明、または削除

9-3. 指摘の「優先順位」を決める

複数の指摘がある場合、以下の順番で対応するとスムーズです。

優先順位:
1. セキュリティ関連(nonce / capability / sanitize / escape / prepared statement)
   → これがないと絶対に通らない

2. 外部通信・トラッキング・プライバシー関連
   → 説明が必要か、削除が必要か判断

3. コーディング規約 / 細かい警告
   → 対応できるものは対応

4. 提案・推奨事項
   → 余裕があれば対応

10. 差し戻し対応の正しい流れ(ここが重要!)

▶ ここでやること:修正したZIPを正しい方法で再提出する

⚠️ よくある誤解:「修正ZIPをメールに添付して返信」

古いブログ記事では「メールに添付して返信」と書かれていることがありますが、現在の推奨方法は提出ページからの再アップロードです。

メールへの添付は容量制限があり、エラーになることがあります。

10-1. 正しい再提出フロー

① 指摘内容を理解(翻訳)
② プラグインを修正
③ バージョンを上げる(例:1.0.0 → 1.0.1)
   ※PHPヘッダーとreadme.txtの両方を更新
④ Plugin Check を再実行し、ERRORがゼロであることを確認
⑤ 新しいZIPを作成
⑥ 提出ページ(Submission page)で、自分の申請を開く
⑦ 新しいZIPをアップロード
⑧ レビュー担当にメールで「再アップロードした」旨と修正点を伝える

10-2. 提出ページへのアクセス方法

  1. https://wordpress.org/plugins/developers/ にアクセス
  2. ログイン
  3. 自分の申請中プラグインを選択
  4. 「Upload a new version」または同様のオプションで新ZIPをアップロード

10-3. メールでの返信(短く、でも明確に)

新ZIPをアップロードしたら、レビュー担当にメールで連絡します。長文より、何を直したかが箇条書きでわかる方がスムーズに進みます。

💡 返信のコツ:

  • 指摘された内容に1つずつ対応したことを明記
  • 修正内容を箇条書きで簡潔に
  • 新ZIPを「提出ページからアップロードした」ことを伝える
  • 丁寧な挨拶は短くてOK

11. 返信テンプレート(英語・コピペOK)

▶ ここでやること:テンプレートを元に、自分の修正内容を記載して返信する

11-1. 基本テンプレート

Hi Plugin Review Team,

Thank you for your feedback.

I have addressed all the issues you mentioned and uploaded the corrected ZIP file via the plugin submission page.

Here is a summary of the changes:

1) [Summary of fix #1]
2) [Summary of fix #2]
3) [Summary of fix #3]

The new version is 1.0.1.

Please let me know if anything else is needed.

Best regards,
[Your Name]

11-2. 具体的な修正例を入れたテンプレート

Hi Plugin Review Team,

Thank you for reviewing my plugin and for your detailed feedback.

I have made all the requested changes and uploaded version 1.0.1 via the submission page.

Changes made:

1) Added esc_html() to all output in admin-page.php (lines 45, 67, 89)
2) Added nonce verification to the settings save function
3) Added current_user_can('manage_options') check before processing form data
4) Changed function prefix from "mp_" to "my_plugin_" throughout the plugin
5) Added sanitize_text_field() to all $_POST inputs

I have also re-run Plugin Check and confirmed there are no errors.

Please let me know if you need any additional changes.

Best regards,
[Your Name]

11-3. 質問がある場合のテンプレート

Hi Plugin Review Team,

Thank you for your feedback.

I have a question regarding point #2 in your email:

[Quote the specific feedback you're asking about]

Could you please clarify what changes are needed here? I want to make sure I understand correctly before making the fix.

I have already addressed the other issues:
1) [Summary of fix #1]
3) [Summary of fix #3]

Thank you for your help.

Best regards,
[Your Name]

12. 承認メールが届いたら:SVN初回リリース

▶ ここでやること:SVNリポジトリにプラグインをアップロードして公開する

審査に通ると、WordPress.orgから承認メールが届きます。このメールには、あなた専用のSVNリポジトリURLが記載されています。

12-1. 承認メールの内容

Congratulations, your plugin hosting request has been approved.

Your plugin SVN repository:

403 Forbidden
Your plugin page:
Search Results for “your-plugin-slug” | WordPress.org

12-2. SVNの基本構造

SVNリポジトリは以下の構造になっています。

your-plugin-slug/
├── trunk/       ← 開発中の最新版(常に最新のコード)
├── tags/        ← リリースごとの固定版
│   ├── 1.0.0/
│   ├── 1.0.1/
│   └── 1.0.2/
└── assets/      ← プラグインページのバナー・アイコン・スクショ
    ├── banner-772x250.png
    ├── icon-256x256.png
    └── screenshot-1.png

12-3. 初回リリースの手順

① SVNをインストール(まだの場合)

# Mac(Homebrewを使用)
brew install svn

# Ubuntu / Debian
sudo apt-get install subversion

# Windows
# TortoiseSVN をインストール: https://tortoisesvn.net/

② リポジトリをチェックアウト

# 作業ディレクトリを作成
mkdir ~/wp-plugins
cd ~/wp-plugins

# SVNリポジトリをチェックアウト
svn co https://plugins.svn.wordpress.org/your-plugin-slug/

③ trunk にプラグインファイルを配置

# プラグインファイルを trunk にコピー
cp -r /path/to/your-plugin-slug/* ~/wp-plugins/your-plugin-slug/trunk/

# 追加されたファイルをSVNに登録
cd ~/wp-plugins/your-plugin-slug
svn add trunk/*

④ assets に画像を配置

# バナー・アイコン・スクリーンショットを配置
cp /path/to/banner-772x250.png assets/
cp /path/to/icon-256x256.png assets/
cp /path/to/screenshot-1.png assets/

# SVNに登録
svn add assets/*

⑤ コミット(公開!)

# コミット(ユーザー名とパスワードを聞かれます)
svn ci -m "Initial release version 1.0.0"

# ユーザー名: WordPress.org のユーザー名
# パスワード: SVN用パスワード(Security設定で確認)

⑥ tags にバージョンをコピー

# trunk の内容を tags/1.0.0 にコピー
svn cp trunk tags/1.0.0
svn ci -m "Tagging version 1.0.0"
🎉 これで公開完了!
コミットから15分程度で、WordPress.orgのプラグインページに反映されます。WordPress管理画面のプラグイン検索でも見つかるようになります。

12-4. assets の命名規則

種類 ファイル名 サイズ
バナー banner-772×250.png / .jpg 772×250px
バナー(Retina) banner-1544×500.png / .jpg 1544×500px
アイコン icon-128×128.png / .jpg 128×128px
アイコン(Retina) icon-256×256.png / .jpg 256×256px
アイコン(SVG) icon.svg
スクリーンショット screenshot-1.png, screenshot-2.png … 任意(横幅1200px程度推奨)
💡 コツ:
readme.txt の == Screenshots == の番号と、screenshot-1.png などの番号を一致させると、プラグインページにキレイに並びます。

13. アップデートの公開方法

▶ ここでやること:プラグインの更新版をリリースする

初回公開後、バグ修正や機能追加で更新する場合の手順です。

13-1. 更新の基本フロー

① プラグインを修正
② バージョン番号を上げる(PHPヘッダー + readme.txt)
③ readme.txt の Changelog を更新
④ Plugin Check で確認
⑤ trunk を更新してコミット
⑥ tags に新バージョンをコピー

13-2. コマンド例

# 最新の状態を取得
cd ~/wp-plugins/your-plugin-slug
svn up

# trunk のファイルを更新
cp -r /path/to/updated-plugin/* trunk/

# 変更をコミット
svn ci -m "Update to version 1.0.1"

# tags に新バージョンをコピー
svn cp trunk tags/1.0.1
svn ci -m "Tagging version 1.0.1"

13-3. readme.txt だけの更新

WordPressのバージョンアップに合わせて「Tested up to」だけ更新する場合:

# trunk の readme.txt を編集
# Tested up to: 6.7 → 6.8 など

# コミット
svn ci trunk/readme.txt -m "Tested up to WordPress 6.8"

# tags の最新版も更新
svn ci tags/1.0.1/readme.txt -m "Tested up to WordPress 6.8"

14. まとめ:差し戻しを減らす「最短の考え方」

前編・後編のポイント総まとめ

【提出前】
✅ 2FA必須 - 設定していないと提出できない
✅ すべて英語 - readme.txt / PHPヘッダー / 申請フォーム
✅ Plugin CheckでERRORゼロ - ERRORがあると提出ブロック
✅ バージョン整合性 - PHPヘッダーとreadme.txtで完全一致
✅ 正しいZIP構成 - 二重フォルダに注意

【差し戻し時】
✅ 翻訳して要件を抜き出す
✅ セキュリティ関連を最優先で修正
✅ 新ZIPは提出ページから再アップロード
✅ メールは短く、修正点を箇条書きで

【承認後】
✅ SVNでtrunkにアップロード
✅ tagsにバージョンをコピー
✅ assetsにバナー・アイコン・スクショを配置

困ったときは

  • 審査が長い:1〜10営業日が目安。混雑時は2週間以上かかることも。催促は逆効果になることがあるので、2週間は待ちましょう
  • 指摘の意味がわからない:メールに返信して質問してOK。丁寧に聞けば教えてもらえます
  • 英語が不安:Google翻訳・DeepL・ChatGPTで十分対応可能

15. 参考リンク集

リンク 用途
プラグイン提出ページ 申請・再アップロード
Plugin Check 公式チェックツール
Readme Validator readme.txtの検証
Plugin Handbook 公式開発ドキュメント
詳細ガイドライン 審査基準の詳細
SVNの使い方 公式SVNガイド
Plugin Assets バナー・アイコンの仕様

おわりに

ここまで読んでいただきありがとうございます!

WordPress.orgへのプラグイン公開は、準備さえしっかりしていれば難しくありません。最初は大変に感じるかもしれませんが、一度公開してしまえば、あとはSVNでアップデートするだけです。

自分のプラグインが世界中のWordPressサイトで使われる——それは開発者として最高の体験です。

ぜひチャレンジしてみてください!🎉

この記事を読んでも解決しない疑問があれば、Chat GPTやClaudeに気軽に質問してみましょう。readme.txtの英訳、返信テンプレのカスタマイズなど、具体的なお手伝いもしてくれます。

コメント

タイトルとURLをコピーしました