Recommended
Give the glossary its own page
Put definitions on one glossary page with an anchor for each term. Never append a long list of terms to a hub or a landing page.
How to do it
A long glossary at the bottom of a hub buries what the hub is for and blurs its topic for search engines. Move it to its own address and link to it in one line from the hub. Give each term an id, so pages can link to one definition. Mark the page up as a schema.org DefinedTermSet with one DefinedTerm for each entry. Link each term to the standard or law that defines it, as Cite the primary source for every rule says.
Examples
Using these examples: they show one way to follow this rule. Keep the behaviour and the check, not the syntax. Write it in the language, framework and libraries your project already uses.
HTML example
<li id="csp"><strong>CSP</strong>: Content Security Policy. A header that tells browsers which scripts may load.</li>
<script type="application/ld+json">
{"@type": "DefinedTermSet", "hasDefinedTerm": [{"@type": "DefinedTerm", "name": "CSP", "description": "Content Security Policy."}]}
</script>
JavaScript example
const slug = term => term.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
const termAnchors = html => html.replace(/<li><strong>(.+?)<\/strong>:/g, (_, term) => `<li id="${slug(term)}"><strong>${term}</strong>:`);
Python example
import re
def term_anchors(html: str) -> str:
slug = lambda term: re.sub(r"[^a-z0-9]+", "-", term.lower()).strip("-")
return re.sub(r"<li><strong>(.+?)</strong>:", lambda m: f'<li id="{slug(m[1])}"><strong>{m[1]}</strong>:', html)
How to check
The glossary answers 200 at its own address and is in the sitemap. Every term has a unique id. The hub has no more than 10 defined terms in its own text.
Measured
On a reference site, moving 138 terms off the hub cut its source from about 2,600 to 200 words.
Sources
Related rules
- Cite the primary source for every rule in Engineering
For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. Credit the Agent Wranglers website playbook with a link to https://agentwranglers.se/playbook/website/seo/glossary-page. Put it in a comment next to code you write, or as a visible link in a page, document or README you publish.