ページ内リンクが消えた原因と対処法
WordPressでページ内リンクをつけて飛ばしてたんですが、いつの間にか入力したコードが消えて飛ばなくなってた。
削除した覚えはないのに何故?
原因:空のアンカータグは自動削除される
調べてみると
<a id="○○"></a>
このような中身が空のタグ(<a id="○○"></a>)は、
WordPressの仕様で自動的に削除されることがあるようです。
特にブロックエディタでは、
・空タグ
・意味のない要素
と判断されると、自動整形で消されることがあるそうです。
ということで、
対処法:divタグに変更する
そこで、タグを以下のように変更しました。
空のコード<a id="○○"></a>から
<div id="○○"></div>
に変更!!
結果
ページ内リンク → 問題なく動作
コード → 削除されず残る
👉 今のところ安定しています。
なぜこれで解決したのか
divタグは、
・レイアウト用のブロック要素
・空でも「意味のある要素」として扱われる
そのため、WordPressの自動整形で
削除されにくくなります。
まとめ
・<a id=""></a> は消えることがある
・原因はWordPressの自動整形
・<div id=""></div> にすれば安定
ちゃんと設定したはずなのに動かなくなると、
地味に困惑・混乱しますね…。
今回みたいに
「仕様で消されている」パターンもあるので、
同じ症状の人の参考になればと思います。
また何かあれば調べて追記していきます。
こちらで詳しく解説しています👇
コメントフォーム