2026年5月20日
2026年5月20日
WordPressのBing Webmaster Toolsを設定する方法
はじめに
BingはGoogleに次ぐ第2位の検索エンジンで、Microsoft Edge・Cortana・ChatGPTの検索機能にも利用されています。Bing Webmaster Toolsに登録してサイトマップを送信し、IndexNowでページ更新を即座に通知することで、Bing検索でのインデックスと表示を改善できます。
症状・原因
- BingでサイトがインデックスされていないURLがある
- Bing検索でサイトが表示されない
- Googleには登録しているがBingには未登録
- IndexNowを使ってBingへのインデックス通知を自動化したい
解決手順
ステップ1:Bing Webmaster Toolsにサイトを登録する
【登録手順】
1. https://www.bing.com/webmasters にアクセス
2. Microsoftアカウントでサインイン
3. 「サイトを追加」→ サイトURLを入力
4. 認証方法を選択:
a) XMLファイル配置(推奨)
b) メタタグ
c) CNAMEレコード
【メタタグ認証(functions.phpで実装)】
// functions.php: Bing Webmaster ツールの認証メタタグを追加
add_action('wp_head', function(): void {
if (!is_front_page()) return;
// Bing Webmaster Tools のサイト認証コード
$bing_verification = get_option('bing_site_verification', '');
if ($bing_verification) {
echo '<meta name="msvalidate.01" content="'
. esc_attr($bing_verification) . '">' . PHP_EOL;
}
}, 1);
// 管理画面に設定フィールドを追加
add_action('admin_init', function(): void {
register_setting('general', 'bing_site_verification');
add_settings_field(
'bing_site_verification',
'Bing認証コード(msvalidate.01)',
function(): void {
$val = get_option('bing_site_verification', '');
echo '<input type="text" name="bing_site_verification"'
. ' value="' . esc_attr($val) . '" class="regular-text">'
. '<p class="description">Bing Webmaster Tools の認証コードを入力</p>';
},
'general'
);
});
ステップ2:サイトマップをBingに送信する
# Bing へのサイトマップ送信
# Bing Webmaster Tools → サイトマップ → サイトマップを送信
# または Bing Ping URL(手動)
curl "https://www.bing.com/ping?sitemap=https://example.com/wp-sitemap.xml"
# WP-CLI で送信状況を確認
wp eval "
\$sitemap = home_url('/wp-sitemap.xml');
\$ping = 'https://www.bing.com/ping?sitemap=' . rawurlencode(\$sitemap);
\$res = wp_remote_get(\$ping, ['timeout' => 15]);
echo 'Status: ' . wp_remote_retrieve_response_code(\$res) . PHP_EOL;
echo \$ping . PHP_EOL;
"
// functions.php: 投稿公開時に Bing へ自動ピング
add_action('publish_post', function(int $post_id): void {
// 下書きからの公開のみ(更新は除く)
if (get_post_status($post_id) !== 'publish') return;
$sitemap_url = home_url('/wp-sitemap.xml');
$ping_url = 'https://www.bing.com/ping?sitemap=' . rawurlencode($sitemap_url);
wp_remote_get($ping_url, [
'timeout' => 10,
'blocking' => false, // 非同期(レスポンスを待たない)
]);
});
ステップ3:IndexNowでページ更新をBingに即時通知する
// functions.php: IndexNow API でページ更新を即時通知
// 1. IndexNow APIキーを生成(ランダム文字列)
// 2. /your-api-key.txt をサイトルートに配置
// 3. ページ更新時にAPIを呼び出す
function indexnow_submit(string $url): bool {
$api_key = get_option('indexnow_api_key', '');
if (!$api_key) return false;
$response = wp_remote_post('https://api.indexnow.org/IndexNow', [
'headers' => ['Content-Type' => 'application/json; charset=utf-8'],
'body' => wp_json_encode([
'host' => parse_url(home_url(), PHP_URL_HOST),
'key' => $api_key,
'keyLocation' => home_url('/' . $api_key . '.txt'),
'urlList' => [$url],
]),
'timeout' => 15,
'blocking' => true,
]);
$code = wp_remote_retrieve_response_code($response);
return $code === 200 || $code === 202;
}
// 投稿の公開・更新時に IndexNow 通知
add_action('save_post', function(int $post_id, WP_Post $post): void {
if (wp_is_post_revision($post_id)) return;
if ($post->post_status !== 'publish') return;
if (!in_array($post->post_type, ['post', 'page'], true)) return;
$url = get_permalink($post_id);
if ($url) {
indexnow_submit($url);
}
}, 10, 2);
// IndexNow キーファイルを動的に配信
add_action('init', function(): void {
$api_key = get_option('indexnow_api_key', '');
if (!$api_key) return;
add_rewrite_rule(
'^' . preg_quote($api_key, '/') . '\.txt$',
'index.php?indexnow_key=1',
'top'
);
});
add_filter('query_vars', function(array $vars): array {
$vars[] = 'indexnow_key';
return $vars;
});
add_action('template_redirect', function(): void {
if (!get_query_var('indexnow_key')) return;
$api_key = get_option('indexnow_api_key', '');
header('Content-Type: text/plain');
echo esc_html($api_key);
exit;
});
ステップ4:Bing Webmaster Toolsのレポートを活用する
【Bing Webmaster Tools の主要レポート】
① 検索パフォーマンス
→ クリック数・表示回数・CTR・平均順位
→ Google Search Console と比較して差異を分析
② インデックス
→ インデックス済みページ数
→ インデックスエラー・クロールエラーを確認
③ サイトスキャン(SEO診断)
→ Bingが検出したSEO問題を自動スキャン
→ titleタグ・metaディスクリプション・画像altなどを診断
④ バックリンク
→ Bingが認識している被リンクを確認
→ Googleと異なる被リンクデータが得られる場合あり
⑤ キーワード調査ツール
→ Bing固有のキーワードデータ
→ 無料で利用できるキーワードアイデアツール
ステップ5:Yoast SEO でBing連携を設定する
// Yoast SEO を使用している場合:
// Yoast SEO → 全般 → ウェブマスターツール
// → Bing認証コードを入力するフィールドがある
// Yoast SEO + IndexNow の自動連携:
// Yoast SEO 18.0以降で IndexNow が組み込み対応
// Yoast SEO → SEO → 検索エンジン最適化 → IndexNow
// → IndexNow: 有効 に設定するだけで自動送信される
// Yoast SEO なしで認証コードを確認
add_action('wp_head', function(): void {
if (!is_front_page()) return;
// Yoast SEO が出力する場合は重複に注意
if (!defined('WPSEO_VERSION')) {
$code = get_option('bing_site_verification', '');
if ($code) {
echo '<meta name="msvalidate.01" content="' . esc_attr($code) . '">' . PHP_EOL;
}
}
}, 1);
注意事項
- IndexNow APIキーファイル(
your-key.txt)はサイトのルートディレクトリに配置するか、上記のようにWordPressのrewrite ruleで動的に配信してください - IndexNowは1回のAPIコールで最大10,000URLを送信できますが、更新したページのみを送信することがガイドラインで推奨されています
- Bing Webmaster ToolsのサイトをGoogleサーチコンソールからインポートする機能があり、すでにGoogleに登録済みの場合は簡単に移行できます
まとめ
Bing Webmaster Toolsへの登録はmsvalidate.01メタタグをwp_headで出力して認証します。サイトマップはwp-sitemap.xmlをBingに送信し、投稿公開時に自動ピングするよう設定します。IndexNow APIキーを生成してページ更新時に即時通知することでBingへのインデックス速度を向上させます。Yoast SEO 18.0以降はIndexNowの組み込みサポートがあり設定画面から有効化するだけで利用できます。