トラブルシューティング
Kashiwazaki SEO Published & Last Updated Dates の使用中に発生しうる問題と対処法、動作要件、技術仕様について解説します。
よくある問題と対処法
日付が表示されない
| 考えられる原因 | 対処法 |
|---|---|
| プラグインが有効化されていない | 管理画面の「プラグイン」一覧で、本プラグインが有効になっていることを確認してください。 |
| 該当の投稿タイプが無効になっている | 設定画面で表示対象の投稿タイプが有効になっているか確認してください。 |
| JavaScriptエラーが発生している | ブラウザの開発者ツール(F12)でコンソールエラーを確認してください。他のプラグインやテーマのJSとの競合が原因の場合があります。 |
| キャッシュプラグインが古い出力を表示している | キャッシュプラグインのキャッシュをクリアしてください。 |
日付のスタイルが崩れる
| 考えられる原因 | 対処法 |
|---|---|
| テーマのCSSとの競合 | 日付の見た目はプラグインの CSS で整えていますが、テーマのグローバルなスタイルが影響する場合があります。設定画面の「日付の色」「デザインパターン」を変えるか、「カスタムCSS」でテーマより強いセレクタのスタイルを指定してください(フォントの設定項目はありません)。 |
| ブラウザがカスタム要素をサポートしていない | カスタム要素は IE11 ではサポートされません(日付の文字は表示されます)。モダンブラウザ(Chrome、Firefox、Safari、Edge)で確認してください。 |
JSON-LDが出力されない
| 考えられる原因 | 対処法 |
|---|---|
テーマが wp_head() を呼び出していない |
テーマの header.php に <?php wp_head(); ?> が記述されていることを確認してください。 |
| 他のプラグインがJSON-LDを上書きしている | 他のSEOプラグインのJSON-LD出力と重複がないか確認してください。 |
更新日が表示されない(公開日のみ表示される)
| 考えられる原因 | 対処法 |
|---|---|
| 投稿が更新されていない・公開直後の更新 | 公開後に更新されていない投稿では、更新日は表示されません。設定画面の「公開直後の場合は更新日を表示しない」がオンのときは、公開から 24 時間以内の更新も表示されません(「更新日を表示」だけを選んだ投稿タイプでは、代わりに最終更新日時を 1 つ表示します)。 |
| 更新日の表示設定が無効 | 設定画面で「更新日の表示」が有効になっているか確認してください。 |
ヒント
問題が解決しない場合は、一度プラグインを無効化してから再有効化してみてください。設定値はデータベースに保持されるため、再有効化後も設定は維持されます。
動作要件
| 項目 | 要件 |
|---|---|
| WordPress | 5.0 以上 |
| PHP | 7.2 以上 |
| 対応ブラウザ | Chrome、Firefox、Safari、Edge(最新版) |
技術仕様
- データ保存: wp_options (ksplud_settings)
- カスタムテーブル: なし
- 外部通信: なし
- Cronイベント: なし
- メール送信: なし
- フロントエンド: CSS 約 8.5KB、JS 約 5.5KB(カスタム要素定義)
- HTTP ヘッダー: 対象の個別ページに Last-Modified を出力
アーキテクチャ
Kashiwazaki SEO Published & Last Updated Dates は以下のコンポーネントで構成されています。
フロントエンド
- サーバーが出力する HTML では、日付をカスタム要素
<published-date>/<updated-date>で囲む(datetime属性にサイトのタイムゾーン付きの日時) - CSS(約 8.5KB)で4種類のデザインパターンを実装
- JavaScript(約 5.5KB)は、カスタム要素を定義したうえで、ページの読み込みの約 0.1 秒後に
<published-date>/<updated-date>を<span class="ksplud-published-date-fallback">/<span class="ksplud-updated-date-fallback">に置き換える(日時はdata-datetime属性に移る)。ブラウザの開発者ツールで見える表示後の要素はこの span です - DigitalDocument + CreateAction/UpdateAction JSON-LD を
<head>内にインライン出力
バックエンド
- 設定データは
wp_optionsテーブルにksplud_settingsキーで保存 the_contentフィルターを使用してコンテンツの前後に日付要素を挿入- 投稿タイプごとの表示制御はバックエンドで処理
日付表示フロー
1
the_content フィルターで投稿コンテンツの出力時に処理が呼び出されます。
2
現在の投稿タイプが表示対象かどうかを確認します。対象外の場合はそのままコンテンツを返します。
3
投稿の公開日・更新日を取得し、設定に基づいて <published-date> / <updated-date> を含む HTML を生成します。
4
設定された表示位置(前・後・前後)に応じてカスタム要素をコンテンツに挿入します。
5
同時に wp_head アクションで DigitalDocument + CreateAction/UpdateAction の JSON-LD を、template_redirect アクションで Last-Modified ヘッダーを出力します。
補足
カスタムテーブルや Cron イベントは使用しません。データベースに保存するのは wp_options の ksplud_settings だけです。プラグインを削除してもこの設定値は自動では消えないので、完全に消したい場合は手動で削除してください(再インストール時は保存済みの設定が使われます)。