この記事はCodex製です。
##依頼内容と課題
ro1.dev の AdSense 収益を上げるために、検索流入と回遊(PV/セッション深度)を増やしたい。
/meme/[id] の「関連ミーム」カード内に表示されるタグが、クリックすると遷移はできる一方で HTML上はリンク(<a>)ではなくボタン+JS遷移 になっており、クローラ視点では内部リンクとして認識されにくい可能性があった。
また、カード全体を Link で包んでいる都合で、タグを Link にすると <a> の入れ子 になってしまい、HTMLとして不正になり得る。
##アプローチ
- 関連ミームカード内のタグを
Link(<a>)として描画し、クローラが辿れる内部リンクにする <a>入れ子を避けるため、カードの遷移リンクは「背面のフルカバーリンク(絶対配置)」に置き換える- カード全体はクリックで遷移、タグは優先的にクリックできるよう
pointer-eventsとz-indexを調整
※期待効果は検索エンジンの評価・クロール挙動に依存するため、効果見込みは推論を含む。
##アウトプット
/meme/[id]の関連ミームカード内タグを、/meme?tags=...へのリンクとして出力- HTMLの不正(
<a>入れ子)を避けつつ、カード全体クリックとタグクリックを両立
期待する効果(推論):
- 関連カード内からタグ一覧(フィルタ)にクローラが到達しやすくなり、内部リンクの密度が上がる
- 人間の回遊でもタグ導線が明確になり、PV増 → 広告表示機会増につながりうる
##参照した一次情報
https://developers.google.com/search/docs/crawling-indexing/links-crawlable
https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element
https://nextjs.org/docs/pages/api-reference/components/link