{"id":158519,"date":"2022-06-08T15:32:32","date_gmt":"2022-06-08T15:32:32","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/wpwing-table-of-contents-block\/"},"modified":"2026-05-30T07:03:39","modified_gmt":"2026-05-30T07:03:39","slug":"wpwing-table-of-contents-block","status":"publish","type":"plugin","link":"https:\/\/bel.wordpress.org\/plugins\/wpwing-table-of-contents-block\/","author":18668647,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.9","stable_tag":"1.0.9","tested":"7.0","requires":"5.8","requires_php":"7.1","requires_plugins":null,"header_name":"Table of Contents (TOC) Block - Fast & SEO Friendly","header_author":"WPWing","header_description":"Adds a basic \"Table of Contents\" Gutenberg block.","assets_banners_color":"1c343b","last_updated":"2026-05-30 07:03:39","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/wpwing.com\/","header_plugin_uri":"https:\/\/wpwing.com\/","header_author_uri":"https:\/\/wpwing.com\/","rating":4,"author_block_rating":0,"active_installs":10,"downloads":2290,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"wpwing","date":"2022-06-08 15:32:29"},"1.0.1":{"tag":"1.0.1","author":"wpwing","date":"2022-06-17 18:56:01"},"1.0.2":{"tag":"1.0.2","author":"wpwing","date":"2022-06-27 18:37:23"},"1.0.3":{"tag":"1.0.3","author":"wpwing","date":"2023-06-14 09:03:31"},"1.0.4":{"tag":"1.0.4","author":"wpwing","date":"2024-02-02 11:45:46"},"1.0.5":{"tag":"1.0.5","author":"wpwing","date":"2024-02-18 03:18:32"},"1.0.6":{"tag":"1.0.6","author":"wpwing","date":"2024-04-21 20:04:57"},"1.0.7":{"tag":"1.0.7","author":"wpwing","date":"2025-07-27 05:37:37"},"1.0.8":{"tag":"1.0.8","author":"wpwing","date":"2026-05-22 02:09:20"},"1.0.9":{"tag":"1.0.9","author":"wpwing","date":"2026-05-30 07:03:39"}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":1,"5":0},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3543005,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3543005,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3543005,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3543005,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"wpwing\/toc":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"wpwing\/toc","version":"1.0.9","title":"Table Of Contents","category":"widgets","keywords":["TOC","Table of Contents","WPWing"],"icon":"list-view","description":"Automatically generates a fast, SEO-friendly table of contents from your headings.","attributes":{"min_level":{"type":"integer","default":2},"max_level":{"type":"integer","default":6},"title_text":{"type":"string","default":""},"no_title":{"type":"boolean","default":false},"use_ol":{"type":"boolean","default":false},"remove_indent":{"type":"boolean","default":false},"use_absolute_urls":{"type":"boolean","default":false},"add_smooth":{"type":"boolean","default":false},"updated":{"type":"integer","default":0}},"example":{},"supports":{"align":["wide","full"]},"textdomain":"wpwing-table-of-contents-block","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css"}},"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8","1.0.9"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2739356,"resolution":"1","location":"assets","locale":"","width":1709,"height":878},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2739356,"resolution":"2","location":"assets","locale":"","width":380,"height":329},"screenshot-3.png":{"filename":"screenshot-3.png","revision":2739356,"resolution":"3","location":"assets","locale":"","width":1074,"height":639},"screenshot-4.png":{"filename":"screenshot-4.png","revision":2739356,"resolution":"4","location":"assets","locale":"","width":371,"height":852},"screenshot-5.png":{"filename":"screenshot-5.png","revision":2748682,"resolution":"5","location":"assets","locale":"","width":850,"height":578},"screenshot-6.png":{"filename":"screenshot-6.png","revision":2748682,"resolution":"6","location":"assets","locale":"","width":829,"height":572}},"screenshots":{"1":"Editor with Table of Contents block","2":"Block inserter section","3":"Block editor section","4":"Block settings section","5":"Output block with default settings","6":"Output block using Group and background color"}},"plugin_section":[],"plugin_tags":[152129,1753,186,10851,10852],"plugin_category":[],"plugin_contributors":[187152,204217],"plugin_business_model":[],"class_list":["post-158519","plugin","type-plugin","status-publish","hentry","plugin_tags-gutenberg-blocks","plugin_tags-navigation","plugin_tags-seo","plugin_tags-table-of-contents","plugin_tags-toc","plugin_contributors-voboghure","plugin_contributors-wpwing","plugin_committers-wpwing"],"banners":{"banner":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/banner-772x250.png?rev=3543005","banner_2x":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/banner-1544x500.png?rev=3543005","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/icon-128x128.png?rev=3543005","icon_2x":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/icon-256x256.png?rev=3543005","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-1.png?rev=2739356","caption":"Editor with Table of Contents block"},{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-2.png?rev=2739356","caption":"Block inserter section"},{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-3.png?rev=2739356","caption":"Block editor section"},{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-4.png?rev=2739356","caption":"Block settings section"},{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-5.png?rev=2748682","caption":"Output block with default settings"},{"src":"https:\/\/ps.w.org\/wpwing-table-of-contents-block\/assets\/screenshot-6.png?rev=2748682","caption":"Output block using Group and background color"}],"raw_content":"<!--section=description-->\n<p>Boost your site\u2019s SEO and maximize reader engagement with the <strong>Table of Contents (TOC) Block - Fast &amp; SEO Friendly<\/strong>.<\/p>\n\n<p>Long articles can overwhelm readers, causing them to leave your site early. This plugin automatically scans your content headings and generates a clean, nested list of anchor links. This allows users to jump directly to the section they need, decreasing bounce rates and satisfying search engines like Google.<\/p>\n\n<p>Unlike clunky legacy plugins, our Table of Contents block is custom-built for the modern WordPress Gutenberg editor. It adds <strong>zero JavaScript<\/strong> to your frontend, keeping your website lightning-fast and ensuring you score perfectly on Core Web Vitals.<\/p>\n\n<h3>\u26a1 Super Lightweight &amp; Performance-First<\/h3>\n\n<p>We know page speed matters for SEO. Our block generates minimal, valid HTML and injects absolutely no extra resources or external scripts. It's built to perform seamlessly without adding bloat to your database or frontend.<\/p>\n\n<h3>\ud83c\udfa8 Complete Customization Control<\/h3>\n\n<p>Unlike plugins that lock basic layout settings behind a pro version, you get full control over your layout directly inside the native block settings:\n* <strong>Style Natively:<\/strong> Easily add background colors, custom padding, and text colors by wrapping the TOC inside standard Gutenberg groups.\n* <strong>Flexible Layouts:<\/strong> Full native block support for both Wide Width and Full Width settings to match your theme.\n* <strong>Depth Control:<\/strong> Choose exactly which headings to include by restricting the maximum depth (e.g., show only H2 and H3, hide H4+).\n* <strong>HTML Flexibility:<\/strong> Choose between an Ordered (numbered) or Unordered (bulleted) HTML list structure for better semantic SEO.\n* <strong>Tidy Formatting:<\/strong> Toggle list indents on or off with a simple click to keep deep nesting looking clean.\n* <strong>Header Freedom:<\/strong> Disable the built-in H2 headline of the TOC block entirely from the sidebar, allowing you to write your own personalized introduction using standard heading blocks.<\/p>\n\n<h3>\ud83d\ude80 Key Features At A Glance<\/h3>\n\n<ul>\n<li><strong>100% Automated:<\/strong> Scans content instantly to generate accurate internal jump links.<\/li>\n<li><strong>Pure Performance:<\/strong> Zero JavaScript added to the frontend\u2014fully optimized for page speed.<\/li>\n<li><strong>Designed for Gutenberg:<\/strong> Integrates natively into the WordPress block editor experience.<\/li>\n<li><strong>Responsive Layouts:<\/strong> Inherits theme styles fluidly for perfect rendering on mobile devices.<\/li>\n<\/ul>\n\n<h3>\ud83d\udd0c Ultimate Compatibility<\/h3>\n\n<p>We ensure our block plays nicely with your entire WordPress stack.\n* Fully supports <strong>Rank Math<\/strong> and top-tier SEO plugins for schema optimization.\n* Works seamlessly with the <strong>GeneratePress<\/strong> theme and major page frameworks.\n* 100% compatible with popular <strong>AMP plugins<\/strong> for mobile-first rendering.<\/p>\n\n<h3>\ud83e\uddd1\u200d\ud83d\udcbb Dedicated Startup Support<\/h3>\n\n<p>At WPWing, we are committed to building high-quality, lightweight utility plugins for WordPress and WooCommerce. Our dedicated support team responds rapidly to the support forums to help you resolve any issues instantly.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Log into your WordPress dashboard, navigate to <strong>Plugins &gt; Add New<\/strong>.<\/li>\n<li>Search for <code>Table of Contents (TOC) Block - Fast &amp; SEO Friendly<\/code>.<\/li>\n<li>Click <strong>Install Now<\/strong> and then <strong>Activate<\/strong>.<\/li>\n<li>Alternatively, upload the plugin files directly to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Open any post or page in the Gutenberg editor, type <code>\/toc<\/code> or search for \"Table of Contents\", and add the block anywhere you like!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20change%20the%20default%20%22table%20of%20contents%22%20text%3F\"><h3>How do I change the default \"Table of Contents\" text?<\/h3><\/dt>\n<dd><p>It's simple! Select the block, look at the sidebar options on the right, and toggle off the default headline. You can then insert a standard WordPress Heading block right above the TOC and type whatever you prefer (e.g., \"What's Inside\", \"Quick Navigation\").<\/p><\/dd>\n<dt id=\"how%20can%20i%20add%20a%20background%20color%20or%20border%20to%20the%20block%3F\"><h3>How can I add a background color or border to the block?<\/h3><\/dt>\n<dd><p>Because this plugin utilizes native Gutenberg styling, simply click the three dots on the block toolbar and select <strong>Group<\/strong>. Once grouped, you can use the native block editor sidebar to add background colors, text colors, paddings, and borders to the entire group.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20add%20extra%20scripts%20or%20bloat%20to%20my%20site%3F\"><h3>Does this plugin add extra scripts or bloat to my site?<\/h3><\/dt>\n<dd><p>Absolutely not. The plugin generates lightweight, valid, and semantic HTML structure. It does not load any external JavaScript, keeping your page load times completely unaffected.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.9 - 30\/05\/2026<\/h4>\n\n<ul>\n<li>New: Custom Title \u2014 set your own TOC heading text directly from the block sidebar.<\/li>\n<li>New: Minimum Heading Level \u2014 exclude shallow headings (e.g. start from H3, hiding H2s).<\/li>\n<li>Improvement: TOC output is now wrapped in a semantic <\/li>\n<\/ul>\n\n<p>&lt;<\/p>\n\n<p>nav&gt; element with an aria-label for better accessibility and screen reader support.<\/p>\n\n<h4>1.0.8 - 22\/05\/2026<\/h4>\n\n<ul>\n<li>Fix: Several PHP fatal errors that could occur in certain edge cases (widgets, templates, reusable blocks).<\/li>\n<li>Fix: Rank Math SEO integration was not being detected due to a plugin slug typo.<\/li>\n<li>Fix: Smooth scroll CSS was incorrectly applied site-wide even when the option was disabled.<\/li>\n<li>Security: Improved output escaping in the rendered TOC HTML.<\/li>\n<li>Improvement: Modernized block editor sidebar markup.<\/li>\n<li>Improvement: Various internal code quality and reliability improvements.<\/li>\n<li>Compatibility: Tested and confirmed compatible with WordPress 7.0.<\/li>\n<\/ul>\n\n<h4>1.0.7 - 28\/07\/2025<\/h4>\n\n<ul>\n<li>Update: Compatibility with WP 6.8<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.6 - 22\/04\/2024<\/h4>\n\n<ul>\n<li>Update: Compatibility with WP 6.5<\/li>\n<li>Update: Name and description update<\/li>\n<li>Fix: Update text domain in js file<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.5 - 18\/02\/2024<\/h4>\n\n<ul>\n<li>Bump version update.<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.4 - 02\/02\/2024<\/h4>\n\n<ul>\n<li>Update: NPM packages.<\/li>\n<li>Update: Compatibility with the latest WordPress.<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.3 - 14\/06\/2022<\/h4>\n\n<ul>\n<li>Update: Change block name.<\/li>\n<li>Update: NPM packages.<\/li>\n<li>Fix: Remove unused code.<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.2 - 26\/06\/2022<\/h4>\n\n<ul>\n<li>Update: Change block category to widgets.<\/li>\n<li>Fix: Refactor code.<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.1 - 18\/06\/2022<\/h4>\n\n<ul>\n<li>Fix: Refactor &amp; mark deprecated some code.<\/li>\n<li>Few minor improvements.<\/li>\n<\/ul>\n\n<h4>1.0.0 - 08\/06\/2022<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Instantly add an SEO-friendly, automated, and hyper-fast Table of Contents block to your posts and pages. Fully optimized for Gutenberg and Core Web V &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/158519","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=158519"}],"author":[{"embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wpwing"}],"wp:attachment":[{"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=158519"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=158519"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=158519"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=158519"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=158519"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bel.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=158519"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}