Table of Contents
The Table of Contents (TOC) feature automatically generates a navigable index for your posts, improving content structure and reader navigation. This feature can be enabled globally or on specific posts.
Enabling TOC Globally
Code Injection is required to add custom JS.
To enable the Table of Contents feature for all posts on your site, insert the following code snippet:
<script>
window.pvs?.initTOC?.();
</script>
This code snippet activates the Table of Contents for all posts on your site using the default headings h1, h2, and h3. To customize which headings appear, modify the headingsSelector
value in the following code snippet:
<script>
window.pvs?.initTOC?.({
headingsSelector: '.post-content > :where(h1, h2, h3)',
});
</script>
Enabling TOC for Specific Posts
If you prefer to enable the Table of Contents only for certain posts or pages, you can use the internal tag system in Ghost:
- Log in to Ghost admin
- Go to Posts, and open the post
- Open the Post settings sidebar
- Specify the
#toc
to Tags - Click Publish
The Table of Contents will now appear only on posts with the #toc
internal tag.
Remember that internal tags starting with #
are not visible to readers and are used only for theme features and integrations.
Disabling TOC for Specific Posts
In cases where youβve enabled the Table of Contents globally but want to disable it for specific posts, you can use another internal tag:
- Log in to Ghost admin
- Go to Posts, and open the post
- Open the Post settings sidebar
- Specify the
#hide-toc
to Tags - Click Publish
The Table of Contents will not appear on posts with the #hide-toc
internal tag, even if itβs enabled globally.
Remember that internal tags starting with #
are not visible to readers and are used only for theme features and integrations.