2026年5月20日

2026年5月20日

WordPressのキーワード調査と記事企画の立て方

はじめに

WordPressサイトのSEO成功の鍵は、適切なキーワード選定から始まります。検索ボリュームだけでなく、競合難易度・検索意図・自サイトの権威性を総合的に考慮してキーワードを選ぶことで、効率よく検索流入を獲得できます。

症状・原因

  • 記事を書いても検索からのアクセスが増えない
  • どのキーワードをターゲットにすればよいかわからない
  • 競合が強いキーワードばかり選んで順位が取れない
  • 記事を書いても内容がバラバラでサイトの専門性が伝わらない

解決手順

ステップ1:サイトの現状をSearch Consoleで把握する

【Search Console でのキーワード調査】

1. Search Console → 検索パフォーマンス → 検索結果
2. 「クエリ」タブで現在の流入キーワードを確認
3. 表示回数が多いがクリック率(CTR)が低いキーワードを特定
   → タイトルの改善で既存記事のアクセスを増やせる可能性あり

4. 「ページ」タブで各ページの平均掲載順位を確認
5. 11〜20位(2ページ目)のページを特定
   → 少しの改善で1ページ目に上がれる可能性(Quick Win)

コマンドでCSVを分析:
# Search Console から CSVエクスポートしたデータを分析
import csv
from collections import defaultdict

with open('search_console_export.csv', 'r', encoding='utf-8') as f:
    reader = csv.DictReader(f)
    rows = list(reader)

# クリック率の低い表示回数の多いキーワード(改善候補)
low_ctr = [r for r in rows
           if int(r.get('Impressions', 0)) > 100
           and float(r.get('CTR', '0%').rstrip('%')) < 2]

print("クリック率改善候補:")
for r in sorted(low_ctr, key=lambda x: int(x['Impressions']), reverse=True)[:10]:
    print(f"  {r['Top queries']}: 表示{r['Impressions']}回 CTR{r['CTR']}")

ステップ2:キーワード調査ツールでボリュームを確認する

【無料ツール】
Googleサジェスト
→ 検索窓で「WordPress 」と入力するとサジェストが表示
→ サジェストは実際のユーザーの検索語なので需要が確認できる

Googleキーワードプランナー(要Google Adsアカウント)
→ 月間検索ボリュームの目安がわかる
→ 「100〜1000」「1000〜1万」の粒度で表示

Ubersuggest(無料枠あり)
→ キーワードのボリューム・難易度・CPC が確認できる
→ 競合サイトの上位キーワードも調査可能

【有料ツール(精度が高い)】
Ahrefs: キーワード難易度(KD)・クリック数の実績データ
SEMrush: 競合分析・キーワードギャップ分析

【キーワード選定の目安】
初期サイト(DA 0〜20)  → KD 0〜20のキーワードから
中堅サイト(DA 20〜40) → KD 20〜40
権威サイト(DA 40+)   → KD 40+も狙える

ステップ3:検索意図を分類して記事タイプを決める

【検索意図の4分類(EEAT基準)】

Know(知りたい)
→ 「WordPressとは」「プラグインの使い方」
→ 解説記事・ハウツー記事

Do(やりたい)
→ 「WordPress インストール方法」「エラー 解決」
→ 手順記事・解決策記事(本サイトの主要記事)

Go(行きたい)
→ 「WordPress.org ログイン」「WordPress ダッシュボード」
→ ナビゲーション目的 → 上位表示しにくい

Buy(買いたい)
→ 「WordPressテーマ おすすめ」「レンタルサーバー 比較」
→ 比較記事・まとめ記事

【記事タイプの選択】
・解説記事(〇〇とは): 検索ボリューム大・競合強
・ハウツー記事(〇〇の方法): ニーズ明確・成約率高
・比較記事(〇〇 vs △△): 購買意図あり・収益化向き
・まとめ記事(〇〇 一覧): ロングテール包括・内部リンクHub

ステップ4:記事企画のテンプレートを作る

// WordPressの投稿カスタムフィールドで
// キーワード情報を記事に紐付けて管理

// functions.php: 記事企画情報をメタボックスで管理
add_action('add_meta_boxes', function(): void {
    add_meta_box(
        'keyword_planning',
        'SEOキーワード企画',
        function(WP_Post $post): void {
            $kw      = get_post_meta($post->ID, '_target_keyword', true);
            $volume  = get_post_meta($post->ID, '_monthly_volume', true);
            $kd      = get_post_meta($post->ID, '_keyword_difficulty', true);
            $intent  = get_post_meta($post->ID, '_search_intent', true);
            wp_nonce_field('keyword_planning_nonce', 'kp_nonce');
            ?>
            <table style="width:100%">
                <tr>
                    <td>ターゲットKW:</td>
                    <td><input type="text" name="target_keyword"
                        value="<?= esc_attr($kw) ?>" style="width:100%"></td>
                </tr>
                <tr>
                    <td>月間検索数:</td>
                    <td><input type="number" name="monthly_volume"
                        value="<?= esc_attr($volume) ?>"></td>
                </tr>
                <tr>
                    <td>難易度(KD):</td>
                    <td><input type="number" name="keyword_difficulty"
                        value="<?= esc_attr($kd) ?>" min="0" max="100"></td>
                </tr>
                <tr>
                    <td>検索意図:</td>
                    <td>
                        <select name="search_intent">
                            <?php foreach (['Know', 'Do', 'Go', 'Buy'] as $opt): ?>
                            <option value="<?= $opt ?>"
                                <?= selected($intent, $opt, false) ?>><?= $opt ?></option>
                            <?php endforeach; ?>
                        </select>
                    </td>
                </tr>
            </table>
            <?php
        },
        'post',
        'side'
    );
});

add_action('save_post', function(int $post_id): void {
    if (!isset($_POST['kp_nonce'])
        || !wp_verify_nonce($_POST['kp_nonce'], 'keyword_planning_nonce')) {
        return;
    }
    foreach (['target_keyword', 'monthly_volume', 'keyword_difficulty', 'search_intent'] as $key) {
        if (isset($_POST[$key])) {
            update_post_meta($post_id, '_' . $key, sanitize_text_field($_POST[$key]));
        }
    }
});

ステップ5:トピッククラスターでサイト構造を設計する

【トピッククラスター戦略】

ピラーページ(中心記事)
→ 「WordPressのSEO完全ガイド」(包括的・長文)

クラスターコンテンツ(詳細記事)
→ 「WordPressのサイトマップ設定方法」
→ 「WordPressのmetaディスクリプション設定」
→ 「WordPressのnofollow設定方法」
→ 「WordPressのページ速度改善」

内部リンク:
→ クラスター → ピラーへのリンク
→ ピラー → 各クラスターへのリンク

効果:
→ ピラーページの権威性が上がる
→ クラスター記事もピラーの権威を受けて上位表示しやすくなる
→ サイト全体の専門性をGoogleに伝えられる

注意事項

  • 検索ボリュームが高いキーワードは競合も強いため、新しいサイトでは初期に低ボリューム・低競合のロングテールキーワードから攻めることを推奨します
  • 検索意図とズレた記事を書いてもGoogleに評価されません。実際に1位〜5位のサイトの記事内容を分析してから執筆方針を決めてください
  • キーワードを詰め込みすぎる「キーワードスタッフィング」はGoogleのペナルティ対象です。自然な文章の中にキーワードを含めることを意識してください

まとめ

キーワード調査はSearch Consoleで現状把握→Ubersuggest等で月間ボリューム・難易度を確認→検索意図をKnow/Do/Go/Buyに分類→記事タイプを決定の順で進めます。トピッククラスター戦略でピラーページとクラスターコンテンツを設計することでサイト全体の専門性を高められます。投稿カスタムフィールドでキーワード情報を記事に紐付けて管理すると、編集作業が効率化します。

お気軽にご相談ください

お見積りへ お問い合わせへ