Add a Table of Contents block to your posts and pages. The TOC is a nested list of links to all heading found in the post or page. To use it, simply add a block and search for “SimpleTOC” or just “TOC”.
Hide the headline “Table of Contents” and set a maximum display depth in the blocks’ sidebar configuration. Add the CSS class “simpletoc-hidden” to a heading block to remove that specific heading from the generated TOC.
- Minimal and valid HTML output.
- Designed for Gutenberg.
- Style SimpleTOC with Gutenberg’s native group styling options.
- Convert the styled group to a reusable block for future posts.
- Inherits the style of your theme.
- Support for column block layouts.
- Control the maximum depth of the headings.
- Choose between an ordered and unordered HTML list.
- SEO friendly: Disable the h2 heading of the TOC block and add your own.
- Comes with English, French, Spanish, German, and Brazilian Portuguese translations.
- Works with non-Latin texts. Tested with Japanese and Arabic.
- Finds headlines in groups and reusable blocks. And in groups within reusable blocks.
- Compatible with AMP plugins.
- Rank Math support.
This plugin is forked from https://github.com/pdewouters/gutentoc by pdewouters and uses code from https://github.com/shazahm1/Easy-Table-of-Contents by shazahm1
Many thanks to Tom J Nowell https://tomjn.com and and Sally CJ who both helped me a lot with my questions over at wordpress.stackexchange.com
Thanks to Quintus Valerius Soranus for inventing the Table of Contents around 100 BC.
SimpleTOC is developed on GitHub: https://github.com/mtoensing/simpletoc
- SimpleTOC Adds a Table of Contents.
SimpleTOC can be found and installed via the Plugin menu within WordPress administration (Plugins -> Add New). Alternatively, it can be downloaded from WordPress.org and installed manually…
In Gutenberg, add a block and search for “SimpleTOC” or just “TOC”. Please save your content before you use the block.
Why did you do this?
How do I change the TOC heading ‘Table of contents’ to some other words?
Hide the headline in the sidebar options of SimpleTOC and add your own heading.
How do I add SimpleTOC to all articles automatically?
I don’t see an easy solution at the moment. SimpleTOC is only a block that can be placed in your post. If there would be a plugin that adds blocks to every post then this would be the solution. I think this should be another separate plug-in to keep the code of SimpleTOC clean and … well, simple. Maybe someone knows of a plug-in that adds blocks automatically to all posts with some parameters and settings? What about site editing in WordPress? I think the core team is working on something like that. I will keep this post open. If I have gained more knowledge how to solve this I will add this feature.
How do I add a background color to SimpleTOC using Gutenberg groups?
Select the block and select “group” in the context menu. Apply “background color”, “link color” and “text color” to this group. SimpleTOC will inherit these styles. You would like to use this styled SimpleTOC group next time you write a post? Convert it to a reusable block.
How do I add smooth scrolling?
You can optionally add the css class “smooth-scroll” to each link the TOC. Then you can install plugin that uses these classes.
SimpleTOC – Table of Contents Block はオープンソースソフトウェアです。以下の人々がこのプラグインに貢献しています。貢献者
- Fix: Requires at least WordPress 5.8. and not 5.9.
- Fix: Better compatibility with Twenty-Twenty-One.
- Fix: Localization is back again.
- Feature: Added “simpletoc-title” and “simpletoc-list” CSS classes. This might break existing custom CSS styles that have not been applied with Gutenberg.
- Feature: Toggle list indent.
- Feature: Better “group” support. Put SimpleTOC in a group and style it with Gutenberg. See FAQ for details.
- Feature: Native block support for wide and full width.
- Feature: Added block.json and refactoring with coding standards for Gutenberg blocks.
- Feature: Add the CSS class “smooth-scroll” to the links. This enables smooth scrolling in themes like GeneratePress.
- Feature: Support for headlines in reusable blocks.
- Feature: Added option to toggle absolute URLs.
- Feature: Added option to replace ul tag with ol tag. This will add decimal numbers to each heading in the TOC.
- Feature: Support for non-latin headlines. SimpleTOC now uses a character block list rather than an allow list.
- Feature: Add the CSS class “simpletoc-hidden” to the heading block to remove it from the Table of Contents.
- Feature: Experimental support for Arabic Text.
- Added Brazilian Portuguese translations to the translations. Thanks Ralden Souza!
- Added support for Rank Math plugin.