Hello,
UPDATE: https://www.phpdocx.com/documentation/cookbook/working-with-headings
Using a Basic, a Trial or an Advanced package, HTML contents can be added to TOC using heading tags (h1, h2...) or a custom paragraph style. On https://www.phpdocx.com/documentation/cookbook/tables-of-contents you can read more information about adding contents to TOC.
Adding a header/footer to a DOCX from HTML using a header/footer tag is only available in Premium licenses using HTML Extended (https://www.phpdocx.com/documentation/introduction/html-extended-to-word-PHP):
HTMLExtended::$tagsBlock['header'] = 'addHeader';
HTMLExtended::$tagsBlock['footer'] = 'addFooter';
$html = '
<head>
<style>
p {font-style: italic;}
p.header {font-size: 20px; font-weight: bold;}
div.footer {font-size: 10px;}
</style>
</head>
<header data-type="default">
<p class="header">
Custom header <strong>with strong style</strong>
</p>
</header>
<p>Lorem ipsum dolor sit amet.</p>
<footer>
<div class="footer">
<table border="1" style="border-collapse: collapse" width="600">
<tbody>
<tr>
<td width="300">Cell A</td>
<td width="300"><img src="image.png" width="35" height="35" style="vertical-align: -15px"></p></td>
</tr>
</tbody>
</table>
</div>
</footer>
';
$docx->embedHTML($html, array('useHTMLExtended' => true));
All licenses can also use replaceVariableByHTML to replace contents by HTML in templates and use addHeader/addFooter to add headers/footers with contents such as text, images, tables, HTML and others.
Regards.