1. Go to this page and download the library: Download ideea/toc library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ideea / toc example snippets
$myHtmlContent = <<<END
<h1>This is a header tag with no anchor id</h1>
<p>Lorum ipsum doler sit amet</p>
<h2 id='foo'>This is a header tag with an anchor id</h2>
<p>Stuff here</p>
<h3 id='bar'>This is a header tag with an anchor id</h3>
END;
$markupFixer = new TOC\MarkupFixer();
$tocGenerator = new TOC\TocGenerator();
// This ensures that all header tags have `id` attributes so they can be used as anchor links
$htmlOut = "<div class='content'>" . $markupFixer->fix($myHtmlContent) . "</div>";
// This generates the Table of Contents in HTML
$htmlOut .= "<div class='toc'><ul>" . $tocGenerator->getHtmlMenu($myHtmlContent) . "</ul></div>";
echo $htmlOut;
$myTwig = new \Twig_Environment();
$myTwig->addExtension(new TOC\TocTwigExtension());
$tocGenerator = new TOC\TocGenerator();
// Get TOC using h2, h3, h4
$toc->getHtmlMenu($someHtmlContent, 2, 3);
// Get TOC using h1, h2
$toc->getHtmlMenu($someHtmlContent, 1, 2);
// Get TOC using h4, h5, h6
$toc->getHtmlMenu($someHtmlContent, 4, 3);
$tocGenerator = new TOC\TocGenerator();
$markupFixer = new TOC\MarkupFixer();
// Get KnpMenu using h1, h2, h3
$tocGenerator->getMenu($someHtmlContent, 1, 3);
// Fix markup for h3, h4 tags only
$markupFixer->fix($someHtmlContent, 3, 2);
$options = [
'currentAsLink' => false,
'currentClass' => 'curr_page',
'ancestorClass' => 'curr_ancestor',
'branch_class' => 'branch
];
$renderer = new Knp\Menu\Renderer\ListRenderer(new Knp\Menu\Matcher\Matcher(), $options);
// Render the list
$tocGenerator = new TOC\TocGenerator();
$listHtml = $tocGenerator->getHtmlMenu($someHtmlContent, 1, 6, $renderer);
$twigLoader = new \Twig_Loader_Filesystem(array(
__DIR__.'/vendor/KnpMenu/src/Knp/Menu/Resources/views',
// ...paths to your own Twig templates that render KnpMenus...
));
$twig = new \Twig_Environment($twigLoader);
$itemMatcher = \Knp\Menu\Matcher\Matcher();
$menuRenderer = new \Knp\Menu\Renderer\TwigRenderer($twig, 'knp_menu.html.twig', $itemMatcher);
$tocGenerator = new TOC\TocGenerator();
// Output the Menu using the template
echo $menuRenderer->render($tocGenerator->getMenu($someHtmlContent));
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.