Skip to content

カスタムコンテンツのカテゴリ一覧で関連先エントリーのSEO設定が反映されない不具合の修正 - #4596

Merged
ryuring merged 3 commits into
baserproject:5.4.xfrom
IwasakiRyuichi:5.4-fix-1029
Oct 29, 2026
Merged

ryuring merged 3 commits into
baserproject:5.4.xfrom
IwasakiRyuichi:5.4-fix-1029

Conversation

@IwasakiRyuichi

Copy link
Copy Markdown
Collaborator

@ryuring

概要

カスタムコンテンツで、関連データ フィールドによるカテゴリ一覧ページ
( /xxxx/archives/recruit_category/7)を表示した際、カテゴリとなる関連先エントリーに
設定したSEO設定が head に反映されない問題を解決しました。

原因

SeoHelper::getMeta() では、カスタムコンテンツについて詳細ページのエントリー個別設定のみを読み込んでおり、archives アクションには対応していませんでした。
そのため、カテゴリ一覧ページではカスタムコンテンツ自体のSEO設定が出力されていました。

対応内容

archives アクションの場合に、関連先エントリーのSEO設定を読み込むようにしました。

  1. URL の パス からフィールド名と ID を取得
  2. カスタムコンテンツが利用しているカスタムテーブルから、該当フィールドの設定を取得
  3. フィールドタイプが関連データの場合、関連先のカスタムテーブル ID を取得
  4. 関連先カスタムテーブル + ID に紐づくSEO設定を、最優先として上書きする

補足

関連先エントリーで未入力のSEO項目は、親(サイト・カスタムコンテンツ)の設定を引き継がず、出力しないようにしています。
理由は例えば親に og:image が設定されていて関連先エントリーには設定していない場合、
カテゴリとしては og:image を設定していないのに、親の og:image が head に出力されてしまうためです。

ご確認お願いします。

@ryuring

ryuring commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator

@IwasakiRyuichi テスト書いてください〜

@IwasakiRyuichi

Copy link
Copy Markdown
Collaborator Author

@ryuring

AGENTS.mdに沿ってClaude Codeでテストを作成し、3ケースとも成功を確認しました。

@ryuring
ryuring merged commit 90abda0 into baserproject:5.4.x Oct 29, 2026
5 checks passed
@ryuring

ryuring commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator

@IwasakiRyuichi ありがとう、マージしました!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants