Joli Table Of Contents
Joli Table Of Contents is the most customizable and performance-focused table of contents plugin for WordPress. It works out of the box for beginners β thanks to a built-in Onboarding Wizard β and offers deep control for advanced users and developers.
Easily insert a table of contents into all your posts with either the Auto-insert, the Gutenberg Block, or the Shortcode.
π Documentation | β Get PRO
π Why Joli Table Of Contents?
β Beginner-Friendly Onboarding Wizard
After activation, a step-by-step setup wizard walks you through the most important settings β no configuration headaches, no reading documentation. Youβll have a working, good-looking TOC in minutes.
π¨ Instant Customization with the Color Palette System
The new Color Palette makes customization effortless. Set just the Accent color and it automatically propagates across your entire TOC β thatβs 90% of the visual work done in a single click. Fine-tune everything else at your own pace.
π§ Smart Heading Detection
Joli Table Of Contents accurately detects headings from third-party shortcodes and blocks that donβt appear directly in the editor but are rendered on the front end. Since v3, you can now choose between Content scope (default β prevents unwanted headings from appearing) and Extended scope for advanced use cases.
π Gutenberg Block with Inline Editing
Use the dedicated Gutenberg Block to insert a table of contents anywhere in your post. The block lets you hide or edit specific headings inline β no settings page needed.
β‘ Performance First
No jQuery dependency. Minified CSS and JavaScript. Conditional style loading based on active settings β only the code you need is loaded. Built for fast websites.
π Migrate from Another TOC Plugin β Without Touching Your Content
Already using Easy Table of Contents, LuckyWP Table of Contents, or another plugin? You can switch to Joli TOC without updating a single shortcode across your posts.
Use the built-in filter to map Joli TOC to your existing shortcode tag:
add_filter('jolitoc_shortcode_tag', function(){ return 'toc'; });
This works with any custom tag, so your existing [toc] (or any other) shortcodes continue to work immediately after switching.
β¨ Key Features
Design & Themes:
* Professional looking themes (Default, Original, Hero, + all legacy themes)
* Dark mode support for v3 themes
* Color Palette system β set one color, style the whole TOC
* Fully customizable: padding, margin, borders, fonts, colors, icons
* Custom CSS support
* CSS variable architecture for deep theming
* Custom theme engine (create your own theme)
Insertion methods:
* Auto-insert (by post type and position)
* Gutenberg Block
* Shortcode [joli-toc]
Auto-insert positions:
* Before/After the content
* Before/After H1
* Before first H2 / After first H2
* After first paragraph
Headings & Detection:
* Detect headings from third-party blocks and shortcodes
* Heading scope: Content (default) or Extended
* Show headings by custom depth (H2 to H6)
* Hide or edit specific headings via the block
* Disable headings by text or CSS class
Navigation & UX:
* Reading time estimate (new in v3)
* Hierarchical or Flat view
* Multiple numbering styles (with regional number support)
* Customizable numbering separator and suffix
* Smooth scrolling
* Folding/unfolding with animation
* Pretty URL hash (e.g. mysite.com/article/#section-title)
* Latin & non-latin character support
* Multilingual hash transliteration
* Responsive β hover events work as touch on mobile
Other:
* Import / Export settings
* Import presets for quick setup
* Custom CSS section
* Fully responsive
* multi-page support
* RTL support
* WPML compatible
* No jQuery
* Developer hooks (see full list)
β Whatβs New in v3
π§ Onboarding Wizard
New users are greeted with a step-by-step onboarding wizard that configures the most important settings for their site β without needing to touch advanced options.
π¨ Color Palette System
A brand-new reusable color palette makes customization fast and consistent. Define your Accent color once and watch it style your entire TOC automatically.
πΌ New & Updated Themes
v3 ships with new and upgraded themes: Default (replaces Basic Light/Dark), Original, and Hero β all with dark mode support and theme-specific style variants.
π Redesigned Settings Page
The admin interface has been fully redesigned with:
* A search bar to quickly find any setting
* A Live Preview panel β see your changes in real time
* A Quick Settings Panel for the most common options
* Better color pickers with palette support
* Session checker to prevent lost changes
π New Style Options
New styling controls include: header border style/width/radius/color, numbering badge colors, base font size, and toggle button styles.
π’ Improved Numbering System
The numbering engine has been upgraded to behave like a proper list β including support for regional numbering formats. Hexadecimal and binary modes have been removed.
π TOC Alignment
Choose between left, center, and right alignment for the entire TOC block.
π Reading Time Estimate
Automatically display an estimated reading time inside the TOC header.
π PRO Features
Get Joli Table Of Contents Pro
Premium Themes:
Widgets:
* π Timeline TOC β display the TOC as a visual timeline on the side of the screen, with proportionally spaced markers
* β
Floating TOC Widget β follows the user as they scroll, shows the active section
* β
Slide-Out TOC Widget β fixed panel on the side of the screen
* β
Sticky Sidebar TOC β TOC in a sidebar widget that sticks while scrolling
* β
Progress Bar Widget β reading progress indicator at the top of the page
PRO-only customization:
* β Collapsible headings
* β View more button (Partial fold)
* β Independent top-level heading styling
* Separator between top-level headings
* Multi-columns mode
* Per-device TOC visibility (in-content vs. sidebar)
* Fade past headings
Advanced auto-insert rules:
* Filter by post type, post title, or post ID
* Exclude specific posts by title or ID
* Different settings per post type (theme, layout, everything)
Custom Post Type support with per-post-type settings.
π§ Shortcode
Insert the TOC anywhere using the shortcode:
[joli-toc]
Migrating from another plugin? Keep your existing shortcode tag without updating any content:
add_filter('jolitoc_shortcode_tag', function(){ return 'toc'; });
This is compatible with shortcode tags used by Easy Table of Contents, LuckyWP Table of Contents, and others.
π£ Developer Hooks
Joli Table Of Contents provides a full set of action and filter hooks for developers.
Common examples (add to your themeβs functions.php):
Disable auto-insert globally:
add_filter(βjoli_toc_disable_autoinsertβ, function(){ return true; });
Disable JS or CSS:
add_filter(βjoli_toc_disable_jsβ, function(){ return true; });
add_filter(βjoli_toc_disable_stylesβ, function(){ return true; });
Customize the TOC title dynamically:
add_filter(βjoli_toc_toc_titleβ, function( $title ){ return βMy Custom Titleβ; });
π More Plugins by WPJoli
| Domain | Exposures | Headers | Last Checked |
|---|---|---|---|
| f*b*e*g*l*t.fr | F | 2026-07-22 02:22:06 | |
| h*p*o*t*e*l.com (WP 7.0.2) | F | 2026-07-21 23:54:31 | |
| m*u*e*s*p*o.com | F | 2026-07-21 23:46:37 | |
| v*i*u*e*o*r*n*a*t.com | F | 2026-07-21 23:38:30 | |
| u*t*a*r*p*l*s*o*l*n*.com (WP 7.0.2) | F | 2026-07-21 22:04:00 | |
| f*l*f*m*l*l*w.com | F | 2026-07-21 21:49:41 | |
| k*s*i*o*b*o*u*.com | B | 2026-07-21 19:54:10 | |
| l*v*-*a*i*n*d.com | B | 2026-07-21 19:54:10 | |
| k*s*i*o*o*n*s*o*d*d.com | B | 2026-07-21 19:54:10 | |
| c*e*i*-*e*s*e*e*s*n.com (WP 6.8.6) | F | 2026-07-21 19:15:23 | |
| i*a*k*j*.com (WP 7.0.2) | F | 2026-07-21 19:07:05 | |
| e*d*c*o*h*s*a*o.com | F | 2026-07-21 15:36:57 | |
| v*c*n*e*-*c*l*i*e*.eu | F | 2026-07-21 14:44:08 | |
| h*n*y*i*s.com (WP 6.5.8) | F | 2026-07-21 13:47:15 | |
| h*w*o*e*s*r*r*n*s*z*.net | F | 2026-07-21 12:14:24 | |
| c*e*k*i*t*f*r*i*a.com (WP 7.0) | F | 2026-07-21 11:41:41 | |
| u*a*a*o*o*o*a*i*n*s.com (WP 7.0.2) | D | 2026-07-21 10:47:03 | |
| b*a*k*a*k*w*n*e*.de (WP 7.0) | F | 2026-07-21 10:27:05 | |
| h*i*s*y*e*e*r*t*.com (WP 7.0.2) | F | 2026-07-21 08:02:16 | |
| k*o*t*.com | F | 2026-07-21 06:35:59 | |
| t*p*k*s*n*t.com (WP 7.0.2) | F | 2026-07-21 06:19:21 | |
| m*s*e*c*n*r*s*o*g*r.com | F | 2026-07-21 05:26:33 | |
| k*i*t*m*s*o*e.com | F | 2026-07-21 02:58:15 | |
| f*s*r*a*g*m*.net | F | 2026-07-21 02:24:25 | |
| m*r*e*l*e*c*c*e*s.com | C | 2026-07-21 02:17:39 | |
| b*f*a*o*i*d*i*g*h*b.com (WP 6.9.5) | D | 2026-07-21 00:37:09 | |
| f*v*r*t*h*i*s*y*e*.com | F | 2026-07-21 00:11:13 | |
| p*-*e*i*.de | C | 2026-07-20 23:07:34 | |
| h*i*d*e*o*v*k*n*i*.nl (WP 6.9.4) | F | 2026-07-20 22:45:36 | |
| b*d*s*o*m*d*t*c*o*.com | F | 2026-07-20 21:55:11 | |
| m*n*c*a*t*l*t.net | F | 2026-07-20 19:00:38 | |
| i*s*a*t*a*i*o*f*a*c*i*.net | F | 2026-07-20 19:00:38 | |
| s*v*s*i*o*f*c*e*.com | F | 2026-07-20 19:00:38 | |
| i*o*t*h*c*e*r*a*2.c*m.de | F | 2026-07-20 19:00:38 | |
| p*-*u*d*c*s*n*.pl | F | 2026-07-20 18:46:20 | |
| e*g*n*d*m*i*.com | F | 2026-07-20 17:52:48 | |
| g*a*i*n*l*r*n*e.com | D | 2026-07-20 16:23:06 | |
| e*l*n*l*w.com | F | 2026-07-20 15:12:12 | |
| m*i*o*d*l*m*t*-*6.fr (WP 7.0.2) | F | 2026-07-20 13:41:38 | |
| v*n*i*p*n.c*.it | F | 2026-07-20 13:32:42 | |
| c*n*e*i*n*l*g.com (WP 7.0.2) | F | 2026-07-20 13:15:25 | |
| g*m*l*z*n*d*.de (WP 7.0.1) | F | 2026-07-20 12:19:40 | |
| a*u*s*a*-*o*o*.com (WP 6.7) | F | 2026-07-20 11:32:23 | |
| o*t*r*n*.com | A | 2026-07-20 10:23:32 | |
| f*s*i*n*a*a*a*.com | F | 2026-07-20 06:30:05 | |
| f*s*i*n*u*o*r*p*.com (WP 7.0.1) | F | 2026-07-20 06:27:43 | |
| n*n*a*s*o*-*i*e*.c*.uk | D | 2026-07-20 06:21:40 | |
| k*s*a*f*u*t*o*l*s.com (WP 7.0.2) | D | 2026-07-20 05:55:27 | |
| g*u*o*c*a*.org | F | 2026-07-20 04:39:10 | |
| a*p*e*d*e*p*r*l*-*e*.com | F | 2026-07-20 03:25:14 | |
| s*o*t*-*s.com | F | 2026-07-20 01:39:50 | |
| m*n*e*e*r*t*e*.com (WP 7.0.2) | F | 2026-07-20 01:20:32 | |
| d*g*e*o*a.com | F | 2026-07-19 21:53:25 | |
| s*n*c*t*e*m*.tv | F | 2026-07-19 18:41:10 | |
| f*r*n*w*n*.com (WP 7.0) | D | 2026-07-19 18:33:48 | |
| o*a*t*c*i*k.com (WP 7.0.2) | F | 2026-07-19 16:11:27 | |
| b*c*c*m.vn (WP 7.0.1) | F | 2026-07-19 15:11:20 | |
| k*o*z*n*a*g*d*.nl (WP 7.0.2) | F | 2026-07-19 13:36:22 | |
| k*g*a*.com | F | 2026-07-19 12:57:51 | |
| p*n*e*s.pub (WP 7.0.2) | D | 2026-07-19 12:51:29 | |
| r*s*f*a*r*n*e.fr (WP 6.9.5) | F | 2026-07-19 10:03:30 | |
| s*i*s*c*s*n*-*r*n*a*s.com | F | 2026-07-19 08:30:48 | |
| d*g*t*c*n*e*t.com | F | 2026-07-19 08:14:48 | |
| m*i*l*u*s*e*e*u*o.com | F | 2026-07-19 05:45:44 | |
| m*i*l*u*h*s*c*d.com | D | 2026-07-19 05:39:34 | |
| k*h*o*g*e.com | F | 2026-07-19 02:36:47 | |
| p*p*r*n*.com (WP 6.9.4) | C | 2026-07-19 00:21:51 | |
| k*e*i*.com | F | 2026-07-18 23:41:28 | |
| t*e*0*4.c*.nz | C | 2026-07-18 22:56:27 | |
| k*d*b*.com | F | 2026-07-18 22:36:22 | |
| h*s*n*s*.com (WP 7.0.2) | F | 2026-07-18 22:31:29 | |
| l*s*u*l*e*d*l*i*t*i*e.fr | F | 2026-07-18 22:14:37 | |
| d*a*h*n*i.com (WP 6.9) | F | 2026-07-18 20:55:57 | |
| o*l*n*d*t*n*t*p.com (WP 7.0.2) | F | 2026-07-18 19:46:14 | |
| v*e*n*m*r*n*f*r*e*.com | F | 2026-07-18 19:35:59 | |
| o*l*n*c*s*n*-*a*.com | C | 2026-07-18 18:46:24 | |
| f*c*o*f*n*e*s.com (WP 6.9.4) | F | 2026-07-18 17:34:51 | |
| h*r*f*a*t*o*a*c*o*e*v*c*s.com | F | 2026-07-18 16:34:17 | |
| a*y*e*m*a*e*.com | D | 2026-07-18 16:20:39 | |
| b*r*b*s*u.fr (WP 7.0.2) | F | 2026-07-18 14:06:58 | |
| f*b*a*b*o*s*o*x.com | F | 2026-07-18 10:26:53 | |
| l*b*c.info | C | 2026-07-18 10:20:53 | |
| m*s*h*n.de (WP 7.0.2) | F | 2026-07-18 07:33:08 | |
| s*e*e*t*l*.de (WP 7.0.1) | F | 2026-07-18 07:33:08 | |
| s*y*u*o*t*r.com | F | 2026-07-18 07:10:21 | |
| s*y*e*i*i*a.com (WP 7.0.2) | F | 2026-07-18 06:40:40 | |
| o*e*e*d*e*d*y.com (WP 6.9.4) | C | 2026-07-18 06:18:07 | |
| i*f*b*l*i*.nl (WP 7.0.2) | F | 2026-07-18 04:00:06 | |
| m*d*t*t*w*t*f*r*a*d*.com | D | 2026-07-18 03:32:47 | |
| d*a*a*y.com (WP 7.0.1) | B | 2026-07-18 02:49:08 | |
| d*a*r*m*w*b.com | F | 2026-07-18 02:31:25 | |
| f*o*d*h*p.com | F | 2026-07-18 00:13:57 | |
| f*o*d*u*.com | F | 2026-07-18 00:13:57 | |
| f*o*d*o*s*.com | F | 2026-07-18 00:13:57 | |
| b*t*-*e*o*.fr | B | 2026-07-17 23:52:45 | |
| u*y*u*h*a*l*a*e*t.o*g.uk (WP 7.0.2) | F | 2026-07-17 22:52:09 | |
| n*t*o*a*e*t*m*e*.com (WP 7.0) | A | 2026-07-17 20:16:13 | |
| t*c*n*c*-*n*i*e.ch | C | 2026-07-17 19:37:11 | |
| d*v*d*m*h*a*i.com | F | 2026-07-17 19:03:05 | |
| o*e*n*f*d*.c*m.co (WP 7.0.1) | F | 2026-07-17 17:50:22 |