トラブルシューティング
Kashiwazaki SEO Sitemap from Menu の使用中に発生しうる問題と対処法、動作要件、技術仕様について解説します。
よくある問題と対処法
サイトマップが表示されない
| 考えられる原因 | 対処法 |
|---|---|
| プラグインが有効化されていない | 管理画面の「プラグイン」一覧で、本プラグインが有効になっていることを確認してください。 |
| ナビゲーションメニューが作成されていない | 外観 > メニュー でナビゲーションメニューが作成されているか確認してください。メニューが1つも存在しない場合、サイトマップは出力されません。 |
| 設定でメニューが選択されていない | プラグインの設定画面で、サイトマップのソースとなるメニューが正しく選択されているか確認してください。 |
| ショートコードの記述ミス | ショートコードが [menu_sitemap] と正しく記述されているか確認してください。ブロックエディタの場合は「ショートコード」ブロックを使用してください。 |
ツールチップが表示されない
| 考えられる原因 | 対処法 |
|---|---|
| ツールチップ機能が無効になっている | プラグインの設定画面でツールチップ機能が有効になっているか確認してください。 |
| SEOプラグインがインストールされていない | Yoast SEO、All in One SEO、Rank Math、SEOPressのいずれかがインストール・有効化されている必要があります。 |
| メタ説明文が設定されていない | 対象ページのSEOプラグインの設定で、メタ説明文が入力されているか確認してください。メタ説明文が空のページではツールチップは表示されません。 |
| メニュー項目がカスタムリンクである | カスタムリンク(外部URLなど)にはSEOプラグインのメタデータが存在しないため、ツールチップは表示されません。 |
サイトマップのスタイルが崩れる
| 考えられる原因 | 対処法 |
|---|---|
| テーマのCSSとの競合 | ブラウザの開発者ツールで、テーマのCSSがサイトマップのスタイルを上書きしていないか確認してください。カスタムCSSで上書きすることも可能です。 |
| カスタムCSSの構文エラー | 設定画面に入力したカスタムCSSに構文エラーがないか確認してください。不要な記述を削除して動作を確認してください。 |
| キャッシュプラグインの影響 | キャッシュプラグインのキャッシュをクリアしてから表示を確認してください。 |
ディレクトリツリースタイルの罫線が文字化けする
| 考えられる原因 | 対処法 |
|---|---|
| 文字エンコーディングの問題 | サイトの文字エンコーディングがUTF-8に設定されていることを確認してください。<meta charset="UTF-8"> がHTMLの <head> 内に記述されているか確認します。 |
| フォントが罫線文字に対応していない | 等幅フォント(monospace)またはシステムフォントを使用してください。カスタムCSSで font-family を調整できます。 |
ヒント
問題が解決しない場合は、一度プラグインを無効化してから再有効化してみてください。設定値はデータベースに保持されるため、再有効化後も設定は維持されます。
動作要件
| 項目 | 要件 |
|---|---|
| WordPress | 5.0 以上 |
| PHP | 7.4 以上 |
| 対応ブラウザ | Chrome、Firefox、Safari、Edge(最新版) |
技術仕様
- データ保存: wp_options (kashiwazaki_seo_sitemap_from_menu_options)
- カスタムテーブル: なし
- 外部通信: なし
- Cronイベント: なし
- メール送信: なし
- セキュリティ: nonce検証、manage_options権限チェック、入出力サニタイズ
アーキテクチャ
Kashiwazaki SEO Sitemap from Menu は以下のコンポーネントで構成されています。
フロントエンド
- CSSのみ(約3.4KB)で5種類のリストスタイルを実装
- JavaScriptは一切使用せず、Core Web Vitalsへの影響をゼロに
- ツールチップはHTML標準の
title属性で実装(追加のJSライブラリ不要)
バックエンド
- 設定データは
wp_optionsテーブルにkashiwazaki_seo_sitemap_from_menu_optionsキーで一元管理 - ナビゲーションメニューの取得には WordPress標準の
wp_get_nav_menu_items()を使用 - SEOプラグインのメタデータは
get_post_meta()で取得 - すべてのフォーム送信に nonce 検証を実施
サイトマップ生成フロー
1
ショートコード [menu_sitemap] がパースされ、設定画面で選択されたメニューIDを取得します。
2
wp_get_nav_menu_items() でメニュー項目を取得し、親子関係に基づいて階層構造を構築します。
3
ツールチップが有効な場合、各メニュー項目に紐づくページのSEOメタ説明文を get_post_meta() で取得します。
4
選択されたリストスタイルに応じたCSSクラスを適用し、ネストされた <ul> / <li> タグのHTMLを生成・出力します。
補足
カスタムテーブル、Cronイベント、外部通信は一切使用しないため、プラグインの削除時にデータベースに不要なデータが残ることはありません。wp_options の設定値のみが削除対象です。