【WordPress】Easy Table of Contentsの設定でハマりそうなポイント(ショートコード・スクロール競合)

製作者用アイコン

mmm

2026.02.12(木曜日)

本記事の画像はすべてWordpressプラグイン「Easy Table of Contents」からの引用です。

WordPressの目次プラグインとして定番の「Easy Table of Contents」。

基本的にはインストールするだけで使えますが、「ショートコードで手動挿入したい場合」「既存テーマとの相性」で設定を変更しないと、正しく動作しないことがあります。

備忘録として、設定時の注意点を2つ共有します。


1. ショートコードを使用する場合

記事の文頭に自動挿入するのではなく、 ショートコードを使用して好きな場所に目次を表示させたい場合の設定です。

■設定項目

設定画面(Settings)内の Advanced(高度な設定) 付近にある以下の項目を確認してください。

  • Generate TOC link ids

ここには必ずチェックを入れる必要があります。

■理由

「Auto Insert(自動挿入)」がオンの場合は、プラグイン側がヘッダータグ(h2, h3など)に自動的にID(アンカーリンク用)を割り振ってくれます。 しかし、自動挿入をオフにしてショートコードで実装する場合、デフォルトでは各見出しにIDが割り振られません。

その結果、目次は表示されるものの「クリックしてもその場所にジャンプしない」という現象が起きます。このチェックを入れることで、ショートコード使用時でもIDが強制的に生成されるようになります。


2. サイトの挙動がおかしい場合(スムーススクロール)

目次のリンクをクリックした際、スクロールの挙動がガクガクしたり、変な位置で止まったりする場合の設定です。

■設定項目

設定画面内の Appearance(外観) 付近にある以下の項目を確認してください。

  • スクロールを滑らかにする (Smooth Scroll)

このチェックは外します(オフにする)

■理由

最近のWordPressテーマや、jQueryなどで既にサイト全体に「スムーススクロール」を実装している場合、プラグイン側のスムーススクロール機能と競合してしまいます。

競合すると、「二重にスクロール処理が走って画面が揺れる」「スクロール位置がズレる」といったバグの原因になります。 自サイトですでに滑らかなスクロールが効いている場合は、プラグイン側の機能をオフにしておきましょう。


まとめ

  • ショートコード派は 「Generate TOC link ids」をON
  • 自前でスムーススクロールしてる人は 「Smooth Scroll」をOFF

設定項目が多くて見落としがちですが、挙動がおかしい時はまずここを確認してみてください

mmm
HTML/CSS/JSを中心としたWeb制作を行っています。PHPも勉強中。 制作の過程で学んだ技術的な知見や、日々の気づきをアウトプットしています。シンプルで使いやすいWeb実装が好きです。