{"id":382854,"date":"2026-10-14T04:57:52","date_gmt":"2026-10-14T04:57:52","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/coaderhub-table-of-contents\/"},"modified":"2026-10-14T04:57:29","modified_gmt":"2026-10-14T04:57:29","slug":"coaderhub-table-of-contents","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/coaderhub-table-of-contents\/","author":23563494,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Coaderhub Table of Contents","header_author":"Coaderhub","header_description":"A lightweight and customizable table of contents for WordPress posts, pages, and custom post types.","assets_banners_color":"cac7c8","last_updated":"2026-10-14 04:57:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":74,"num_ratings":0,"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":"coaderhub","date":"2026-10-14 04:57:29","revision":3745324}},"upgrade_notice":{"1.0.0":"<p>Initial release of Coaderhub Table of Contents with customizable layouts, automatic insertion, shortcode support, responsive navigation, and accessibility improvements.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3745324,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3745324,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3745324,"resolution":"1544x500","location":"assets","locale":"","width":1500,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3745324,"resolution":"772x250","location":"assets","locale":"","width":750,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3745324,"resolution":"1","location":"assets","locale":"","width":1347,"height":1167},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3745324,"resolution":"2","location":"assets","locale":"","width":1536,"height":1024}},"screenshots":{"1":"Configure automatic insertion, display post types, heading levels, layout, spacing, and behavior from the plugin settings.","2":"Use the Sidebar layout with sticky table of contents navigation on desktop."}},"plugin_section":[],"plugin_tags":[1953,19897,1753,10851,10852],"plugin_category":[34,43],"plugin_contributors":[280574],"plugin_business_model":[],"class_list":["post-382854","plugin","type-plugin","status-publish","hentry","plugin_tags-accessibility","plugin_tags-headings","plugin_tags-navigation","plugin_tags-table-of-contents","plugin_tags-toc","plugin_category-accessibility","plugin_category-customization","plugin_contributors-coaderhub","plugin_committers-coaderhub"],"banners":{"banner":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/banner-772x250.png?rev=3745324","banner_2x":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/banner-1544x500.png?rev=3745324","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/icon-128x128.png?rev=3745324","icon_2x":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/icon-256x256.png?rev=3745324","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/screenshot-1.png?rev=3745324","caption":"Configure automatic insertion, display post types, heading levels, layout, spacing, and behavior from the plugin settings."},{"src":"https:\/\/ps.w.org\/coaderhub-table-of-contents\/assets\/screenshot-2.png?rev=3745324","caption":"Use the Sidebar layout with sticky table of contents navigation on desktop."}],"raw_content":"<!--section=description-->\n<p>Coaderhub Table of Contents is a lightweight and customizable table of contents plugin for WordPress.<\/p>\n\n<p>It automatically detects headings in your content and creates a clean navigation panel that helps visitors quickly move between sections of an article or page.<\/p>\n\n<p>Control where the table of contents appears, choose which public post types support automatic insertion, customize the layout and spacing, and configure navigation behavior from the WordPress admin settings.<\/p>\n\n<p>The plugin supports H2-H6 headings, automatic insertion, shortcode usage, multiple layouts, sticky desktop navigation, active heading highlighting, smooth scrolling, keyboard navigation, and responsive mobile layouts.<\/p>\n\n<p>Accessibility improvements help visitors navigate the table of contents using a keyboard, identify focused controls, and move focus to the relevant content heading after navigation.<\/p>\n\n<p>It is designed to provide useful customization without adding unnecessary complexity.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Automatically generate a table of contents from H2-H6 headings.<\/li>\n<li>Choose which heading levels should appear in the TOC.<\/li>\n<li>Automatically generate unique heading anchor IDs.<\/li>\n<li>Preserve existing heading IDs where possible.<\/li>\n<li>Handle duplicate heading names.<\/li>\n<li>Configure the minimum number of headings required before displaying the TOC.<\/li>\n<li>Insert the TOC before content or after the first paragraph.<\/li>\n<li>Choose which public post types display the automatic TOC.<\/li>\n<li>Enable automatic TOC display on posts, pages, and supported public custom post types.<\/li>\n<li>Keep automatic TOC display limited to selected content types.<\/li>\n<li>Display the TOC manually using a shortcode, independently of automatic post-type selection.<\/li>\n<li>Choose Full Width, Compact, or Sidebar layout.<\/li>\n<li>Choose left or right sidebar positioning.<\/li>\n<li>Configure the TOC width.<\/li>\n<li>Configure top, right, bottom, and left spacing.<\/li>\n<li>Enable sticky TOC positioning on desktop.<\/li>\n<li>Automatically disable sticky positioning on mobile devices.<\/li>\n<li>Enable or disable smooth scrolling.<\/li>\n<li>Enable active heading highlighting.<\/li>\n<li>Navigate TOC links using the keyboard.<\/li>\n<li>Operate the expand and collapse control using standard keyboard interactions.<\/li>\n<li>Display visible focus indicators for keyboard-focused links and controls.<\/li>\n<li>Move keyboard focus to the relevant heading after activating a TOC link.<\/li>\n<li>Provide expanded-state information for the TOC toggle using ARIA attributes.<\/li>\n<li>Respect the operating system's reduced-motion preference.<\/li>\n<li>Provide additional focus styling for supported Windows High Contrast settings.<\/li>\n<li>Responsive design for desktop, tablet, and mobile.<\/li>\n<li>No custom database tables.<\/li>\n<li>Uses the WordPress Options API for settings.<\/li>\n<li>No external services are required.<\/li>\n<\/ul>\n\n<h3>Shortcode<\/h3>\n\n<p>You can manually display the table of contents using:<\/p>\n\n<pre><code>[coaderhub_toc]\n<\/code><\/pre>\n\n<p>The shortcode generates the table of contents based on the supported headings in the current post or page.<\/p>\n\n<p>The shortcode is useful when automatic insertion is disabled or when you want to control where the TOC appears within your content.<\/p>\n\n<p>Manual shortcode placement is independent of the post types selected for automatic insertion.<\/p>\n\n<h3>Automatic Insertion<\/h3>\n\n<p>When automatic insertion is enabled, Coaderhub Table of Contents detects supported headings and automatically adds the table of contents when the configured minimum number of headings is reached.<\/p>\n\n<p>Automatic insertion can be configured for selected public post types using the <strong>Display On<\/strong> setting.<\/p>\n\n<p>You can choose between:<\/p>\n\n<ul>\n<li>Posts<\/li>\n<li>Pages<\/li>\n<li>Supported public custom post types registered by your theme or other plugins<\/li>\n<\/ul>\n\n<p>The available content types depend on which public post types are registered on your WordPress website.<\/p>\n\n<p>Only the selected post types receive automatic TOC insertion. For example, if only Posts is selected, automatic TOC insertion is enabled for posts and not pages.<\/p>\n\n<p>You can also choose between these insertion positions:<\/p>\n\n<ul>\n<li>Before content<\/li>\n<li>After the first paragraph<\/li>\n<\/ul>\n\n<p>Disabling automatic insertion does not disable the <code>[coaderhub_toc]<\/code> shortcode.<\/p>\n\n<h3>Heading Levels<\/h3>\n\n<p>The plugin supports:<\/p>\n\n<ul>\n<li>H2<\/li>\n<li>H3<\/li>\n<li>H4<\/li>\n<li>H5<\/li>\n<li>H6<\/li>\n<\/ul>\n\n<p>You can choose exactly which heading levels should be included in the table of contents.<\/p>\n\n<h3>Layouts<\/h3>\n\n<p>Coaderhub Table of Contents provides three layout options.<\/p>\n\n<h4>Full Width<\/h4>\n\n<p>Displays the table of contents across the available content width.<\/p>\n\n<h4>Compact<\/h4>\n\n<p>Displays a compact table of contents suitable for articles and standard content layouts.<\/p>\n\n<h4>Sidebar<\/h4>\n\n<p>Displays the table of contents beside the article content.<\/p>\n\n<p>The Sidebar layout supports:<\/p>\n\n<ul>\n<li>Left sidebar<\/li>\n<li>Right sidebar<\/li>\n<li>Configurable sidebar width<\/li>\n<li>Sticky desktop positioning<\/li>\n<\/ul>\n\n<h3>Sticky Table of Contents<\/h3>\n\n<p>The Sidebar layout can use sticky positioning to keep the table of contents visible while visitors scroll through longer articles.<\/p>\n\n<p>Sticky positioning is designed for desktop layouts and is automatically disabled on mobile devices.<\/p>\n\n<h3>Active Heading<\/h3>\n\n<p>When active heading highlighting is enabled, the table of contents automatically highlights the section currently being viewed.<\/p>\n\n<p>This makes it easier for visitors to understand their position within a long article.<\/p>\n\n<h3>Smooth Scrolling<\/h3>\n\n<p>The plugin can provide smooth scrolling when visitors activate a table of contents link.<\/p>\n\n<p>Smooth scrolling can be enabled or disabled from the plugin settings.<\/p>\n\n<p>When the visitor's operating system requests reduced motion, the plugin avoids smooth scrolling.<\/p>\n\n<h3>Responsive Design<\/h3>\n\n<p>The table of contents adapts to different screen sizes.<\/p>\n\n<p>On smaller screens, the Sidebar layout changes to a standard stacked layout and sticky positioning is disabled to provide a better mobile experience.<\/p>\n\n<p>Keyboard focus indicators and accessibility styling are designed to work alongside the existing responsive layouts.<\/p>\n\n<h3>Accessibility<\/h3>\n\n<p>Coaderhub Table of Contents includes accessibility improvements designed to support keyboard navigation and help visitors identify and operate navigation controls.<\/p>\n\n<p>Accessibility features include:<\/p>\n\n<ul>\n<li><strong>Keyboard navigation:<\/strong> Use Tab and Shift+Tab to move between focusable TOC controls and links.<\/li>\n<li><strong>Keyboard activation:<\/strong> Press Enter to activate a TOC link. The expand\/collapse button supports standard Enter and Space activation.<\/li>\n<li><strong>Visible focus indicators:<\/strong> Keyboard-focused links and controls display a visible outline.<\/li>\n<li><strong>Accessible toggle state:<\/strong> The expand\/collapse control exposes its expanded state and identifies the collapsible content using ARIA attributes.<\/li>\n<li><strong>Heading focus management:<\/strong> Activating a TOC link moves focus to the corresponding content heading.<\/li>\n<li><strong>Reduced motion:<\/strong> Respects the visitor's operating system reduced-motion preference.<\/li>\n<li><strong>High contrast:<\/strong> Provides additional focus styling for supported Windows High Contrast settings.<\/li>\n<li><strong>Semantic navigation:<\/strong> Uses navigation markup and interactive controls intended to support assistive technologies.<\/li>\n<\/ul>\n\n<p>These enhancements are designed to preserve the existing TOC layout, hierarchy, active-heading styling, and responsive behavior.<\/p>\n\n<p>Actual accessibility also depends on the surrounding theme, page markup, and other installed plugins.<\/p>\n\n<h3>Settings<\/h3>\n\n<p>Go to:<\/p>\n\n<pre><code>Settings &gt; Table of Contents\n<\/code><\/pre>\n\n<p>Available settings include:<\/p>\n\n<ul>\n<li>Automatic insertion<\/li>\n<li>Display On: select public post types for automatic TOC display<\/li>\n<li>Insert position<\/li>\n<li>Minimum headings<\/li>\n<li>Heading levels<\/li>\n<li>TOC title<\/li>\n<li>Layout<\/li>\n<li>Sidebar position<\/li>\n<li>TOC width<\/li>\n<li>Spacing<\/li>\n<li>Smooth scrolling<\/li>\n<li>Active heading highlighting<\/li>\n<li>Sticky positioning<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>Coaderhub Table of Contents does not collect, store, or transmit personal data as part of its standard functionality.<\/p>\n\n<p>The plugin does not communicate with external services and does not create custom database tables.<\/p>\n\n<p>Plugin settings are stored using the standard WordPress Options API.<\/p>\n\n<h3>Security<\/h3>\n\n<p>The plugin follows WordPress security practices including:<\/p>\n\n<ul>\n<li>Capability checks for administrative settings.<\/li>\n<li>WordPress Settings API.<\/li>\n<li>WordPress sanitization functions.<\/li>\n<li>WordPress escaping functions.<\/li>\n<li>Safe handling of generated HTML attributes.<\/li>\n<li>Safe handling of plugin settings.<\/li>\n<li>No storage of visitor personal data.<\/li>\n<li>No external service communication.<\/li>\n<\/ul>\n\n<h3>Requirements<\/h3>\n\n<ul>\n<li>WordPress 6.0 or later.<\/li>\n<li>PHP 7.4 or later.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>coaderhub-table-of-contents<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Go to <code>Settings &gt; Table of Contents<\/code>.<\/li>\n<li>Configure the table of contents settings.<\/li>\n<li>Select the public post types on which automatic TOC display should be enabled.<\/li>\n<li>Create or edit a post, page, or supported custom post type containing supported headings.<\/li>\n<li>View the content on the frontend.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20headings%20are%20supported%3F\"><h3>Which headings are supported?<\/h3><\/dt>\n<dd><p>The plugin supports H2, H3, H4, H5, and H6 headings.<\/p><\/dd>\n<dt id=\"can%20i%20choose%20which%20heading%20levels%20appear%3F\"><h3>Can I choose which heading levels appear?<\/h3><\/dt>\n<dd><p>Yes. You can select the heading levels from the plugin settings.<\/p><\/dd>\n<dt id=\"can%20i%20choose%20where%20automatic%20toc%20appears%3F\"><h3>Can I choose where automatic TOC appears?<\/h3><\/dt>\n<dd><p>Yes. Use the Display On setting to select the public post types where automatic TOC insertion should be enabled.<\/p><\/dd>\n<dt id=\"can%20i%20enable%20automatic%20toc%20on%20posts%20but%20not%20pages%3F\"><h3>Can I enable automatic TOC on posts but not pages?<\/h3><\/dt>\n<dd><p>Yes. Select Posts and unselect Pages in the Display On setting. Automatic insertion will then be limited to the selected post types.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20custom%20post%20types%3F\"><h3>Does the plugin support custom post types?<\/h3><\/dt>\n<dd><p>Yes. Supported public custom post types registered on your website can be selected for automatic TOC insertion.<\/p><\/dd>\n<dt id=\"does%20changing%20display%20on%20affect%20the%20shortcode%3F\"><h3>Does changing Display On affect the shortcode?<\/h3><\/dt>\n<dd><p>No. The <code>[coaderhub_toc]<\/code> shortcode can be used independently of the post types selected for automatic insertion.<\/p><\/dd>\n<dt id=\"can%20i%20manually%20display%20the%20toc%3F\"><h3>Can I manually display the TOC?<\/h3><\/dt>\n<dd><p>Yes. Use the <code>[coaderhub_toc]<\/code> shortcode.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20automatic%20insertion%3F\"><h3>Can I disable automatic insertion?<\/h3><\/dt>\n<dd><p>Yes. Automatic insertion can be disabled from the plugin settings while still allowing the shortcode to be used.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20toc%20position%3F\"><h3>Can I change the TOC position?<\/h3><\/dt>\n<dd><p>Yes. You can insert the TOC before the content or after the first paragraph when automatic insertion is enabled.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20a%20sidebar%20layout%3F\"><h3>Does the plugin support a sidebar layout?<\/h3><\/dt>\n<dd><p>Yes. The Sidebar layout can display the TOC beside the article content, with options for left or right positioning.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20sticky%20navigation%3F\"><h3>Does the plugin support sticky navigation?<\/h3><\/dt>\n<dd><p>Yes. Sticky positioning is available for the Sidebar layout on desktop devices.<\/p><\/dd>\n<dt id=\"does%20sticky%20navigation%20work%20on%20mobile%3F\"><h3>Does sticky navigation work on mobile?<\/h3><\/dt>\n<dd><p>No. Sticky positioning is automatically disabled on mobile devices for better usability.<\/p><\/dd>\n<dt id=\"can%20i%20navigate%20the%20toc%20using%20a%20keyboard%3F\"><h3>Can I navigate the TOC using a keyboard?<\/h3><\/dt>\n<dd><p>Yes. Use Tab and Shift+Tab to navigate focusable TOC controls and links. Press Enter to activate a TOC link, and use Enter or Space to operate the expand\/collapse button.<\/p><\/dd>\n<dt id=\"does%20the%20toc%20support%20visible%20keyboard%20focus%3F\"><h3>Does the TOC support visible keyboard focus?<\/h3><\/dt>\n<dd><p>Yes. Keyboard-focused TOC links and controls receive visible focus indicators.<\/p><\/dd>\n<dt id=\"does%20activating%20a%20toc%20link%20move%20keyboard%20focus%20to%20the%20heading%3F\"><h3>Does activating a TOC link move keyboard focus to the heading?<\/h3><\/dt>\n<dd><p>Yes. The plugin attempts to move keyboard focus to the corresponding content heading after a TOC link is activated.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20reduced%20motion%3F\"><h3>Does the plugin support reduced motion?<\/h3><\/dt>\n<dd><p>Yes. When the visitor's operating system requests reduced motion, the plugin avoids smooth scrolling.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20high%20contrast%20mode%3F\"><h3>Does the plugin support high contrast mode?<\/h3><\/dt>\n<dd><p>The plugin provides additional focus and interface styling for supported Windows High Contrast settings.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20create%20a%20custom%20database%20table%3F\"><h3>Does the plugin create a custom database table?<\/h3><\/dt>\n<dd><p>No. The plugin does not create custom database tables. Settings are stored using the standard WordPress Options API.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20collect%20personal%20data%3F\"><h3>Does the plugin collect personal data?<\/h3><\/dt>\n<dd><p>The plugin does not collect or transmit personal data as part of its standard functionality.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release of Coaderhub Table of Contents.<\/li>\n<li>Automatic table of contents generation.<\/li>\n<li>H2-H6 heading support.<\/li>\n<li>Configurable heading levels.<\/li>\n<li>Unique heading anchor IDs.<\/li>\n<li>Existing heading ID support.<\/li>\n<li>Duplicate heading handling.<\/li>\n<li>Shortcode support.<\/li>\n<li>Full Width layout.<\/li>\n<li>Compact layout.<\/li>\n<li>Sidebar layout.<\/li>\n<li>Left and right sidebar positioning.<\/li>\n<li>Configurable TOC width.<\/li>\n<li>Configurable spacing.<\/li>\n<li>Sticky desktop TOC.<\/li>\n<li>Active heading highlighting.<\/li>\n<li>Smooth scrolling.<\/li>\n<li>Responsive mobile layout.<\/li>\n<li>Keyboard navigation and accessibility improvements.<\/li>\n<li>Visible keyboard focus indicators.<\/li>\n<li>Accessible expand\/collapse controls.<\/li>\n<li>Heading focus management.<\/li>\n<li>Reduced-motion support.<\/li>\n<li>High Contrast mode styling.<\/li>\n<li>WordPress Options API-based settings.<\/li>\n<\/ul>","raw_excerpt":"A lightweight and customizable table of contents for WordPress posts, pages, and custom post types.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/382854","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=382854"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/coaderhub"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=382854"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=382854"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=382854"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=382854"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=382854"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=382854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}