Titula

Beskrivelse

Titula is about how an article reads. It gives your headings a consistent
treatment, builds a table of contents with stable anchors, puts the answer
where a reader looking for it will find it, and makes tables legible on a
phone. The markup it produces is semantic, scoped and small, and your post
content is never rewritten.

Better structure and readability make an article easier for a visitor to scan,
navigate and understand, and a clearer foundation for search-friendly content.
No plugin can promise a ranking, and this one does not.

What makes it different

Article design first. Heading styles you can see before you choose them, a
table of contents with anchors that stay readable in Arabic, Spanish and
French, answer-first components that render only when you have filled them in,
and tables that scroll or stack rather than overflowing. One screen, grouped by
what it is for, with a live preview where the choice is visual.

Editorial Readiness. Open a post and Titula reports five dimensions —
Answer Clarity, Content Structure, Reader Experience, Internal Linking, Search
and AI Readiness — with a plain sentence and a short list of what to fix. It
names specific problems: a skipped heading level, an introduction that buries
the answer, a section running long without a subheading, images missing
dimensions. There is no word-count target, no keyword density and no keyword
repetition in the model, because none of those measure whether an article is
good.

Internal link suggestions you approve. Titula reads your published articles
and finds places where one could link to another. Each suggestion shows the
source, the destination, the sentence around it, a score and the reason. You
accept or ignore it.

Accepting one never rewrites your post. The decision is stored and the link is
applied when the page renders, so your content stays exactly as you wrote it
and any choice can be undone. The anchor is always a phrase your article
already contains — nothing is reworded, and no keyword is forced in. Links are
never placed inside existing links, headings, code or captions.

Arabic and RTL, handled properly

Measurement built for the Latin alphabet gives wrong answers in Arabic, and
most plugins never notice. PHP’s own str_word_count() returns zero for Arabic
text, so reading times on Arabic sites are frequently nonsense.

Titula counts by Unicode word boundaries, strips diacritics and the tatweel
before measuring since neither is a letter, discards punctuation-only tokens,
and times Arabic and Latin words at separate adjustable speeds. Heading anchors
stay readable in Arabic instead of collapsing into numbered fragments.

Three optional extras for Arabic publishers:

  • Latin permalink suggestions. WordPress percent-encodes Arabic slugs, so a
    title becomes a URL of the form %d8%a7%d9%84. Valid, but unreadable once
    copied, printed or read aloud. Titula suggests a transliteration in the
    editor with a checkbox to apply it, warns you when the post is published and
    changing it would break existing links, and never changes anything on its
    own. Arabic permalinks are a legitimate choice.
  • Hijri dates, shown beside the Gregorian date rather than replacing it.
    The machine-readable date in the markup stays Gregorian, as the HTML
    specification requires. Where the intl extension is available the Umm
    al-Qura calendar is used; otherwise a tabular calculation, which can differ
    from an announced date by a day, so a manual adjustment is provided.
  • Arabic typography. Raises line height, which the script needs because
    letters carry taller ascenders and deeper descenders and diacritics sit above
    and below the line. Just as importantly it resets letter-spacing: Arabic
    letters join, and spacing them apart pulls the joins open. Themes designed
    for Latin text set letter-spacing on headings routinely, and it looks correct
    in their previews because those previews are in English.

Reading experience

  • Table of contents from your H2 and H3 headings, with stable anchors that stay
    readable in Latin, Arabic and accented scripts, in six visual styles. Long
    lists collapse behind a “View all sections” control.
  • Sixteen heading treatments and eight accent choices, so an article looks like
    your site rather than like a plugin.
  • Quick Answer, Key Takeaways and Article Summary, shown above the table of
    contents so a reader who wants only the answer finds it first.
  • FAQ, facts, pros and cons, steps, checklist, related reading and an author
    box. Every component optional; one with an empty field renders nothing.
  • Tables that take their colours from your theme’s own palette rather than
    imposing a second one, and that reorganise on a phone instead of asking the
    reader to drag them sideways. A table of three to seven columns becomes one
    card per row, each value labelled with its own column heading. Very wide
    reference tables keep their scroll, because a card that long stops being
    readable. Nothing is ever hidden: a phone reader sees exactly what a desktop
    reader sees.

Everything is free

There is no paid version, no upsell, no locked feature and no account.

Performance

  • Rendered articles are cached and reused until the post or a setting changes.
  • Content analysis is manual, batched and resumable. It never runs on a visitor
    request. Also available as wp titula scan.
  • Stylesheets load only on singular views of a supported post type, and are
    split by feature: the table rules are requested when a table is detected in
    the content or when dynamic content might render one, rather than on every
    article. The script loads only when the article actually has a table of
    contents or images.
  • No external requests, no tracking, no jQuery.

Articles built as raw HTML are left alone

If you publish some articles as a complete, self-contained HTML layout pasted
into a Custom HTML block, Titula detects them and does nothing to them at all:
no table of contents, no heading anchors, no components, no wrapper, and not
even a stylesheet request.

Detection is deliberately cautious, since wrongly skipping an ordinary article
is far worse than wrongly processing one. It looks for signals an ordinary post
never produces: a style element in the content, most of the article sitting
inside Custom HTML blocks, or heavy inline styling. A long article containing
one small embed block is not affected.

Every post also carries a Processing control in the editor, in both the block
and classic editors, so you can force either answer. Excluded articles are
still valid destinations for links from elsewhere: leaving an article alone
means not modifying it, not refusing to point at it.

What Titula does not do

  • It writes no SEO title, meta description, canonical URL or robots directive.
  • It produces no structured data, and never modifies schema from another plugin.
  • It generates no text and contacts no external service or AI model.
  • It cannot promise a ranking, a Google AI Overview placement or a citation in
    any AI assistant. No plugin can, and this one does not claim to.
  • It styles nothing outside the article container, so your theme is untouched.

Installation

  1. Install through Plugins > Add New, or upload the ZIP.
  2. Activate it.
  3. Open Titula in the admin menu. The Overview carries a five-step setup guide;
    follow it to Appearance and pick one of the four starting points: People
    First, Travel, Technology or Editorial. That is the whole setup.
  4. Optional: run a scan from Analysis to see what your published articles are
    missing, or from Internal Linking to review link suggestions.

Everything is configured in that one screen; there is no separate Titula page
under Settings. Every individual setting is still there, but you should not
need it on day one.

FAQ

Does this replace Rank Math or Yoast?

No, and it is designed not to. Titula adds no schema and no meta tags. Keep
using your SEO plugin exactly as you do now.

Will it change my theme or my other pages?

No. Every CSS rule is scoped inside the article container. Your header, footer,
sidebar, widgets and every page outside the selected post types are untouched.

Does it modify my post content in the database?

No. Components and approved internal links are applied when the page renders.
Your content stays exactly as you wrote it, and anything you enable can be
switched off with no trace left behind.

Does it require Advanced Custom Fields?

No. Titula uses ACF when it is present and plain post meta when it is not.

Will it change my Arabic permalinks?

Only if you tick the box in the editor and save. Nothing happens in bulk,
nothing happens on activation, and the panel warns you first when the post is
already published.

How accurate is the Hijri date?

It is calculated, not announced. In most countries the start of a Hijri month
is declared by observation of the crescent, and no formula predicts that. The
settings screen tells you which method your server uses and offers a manual
adjustment of up to two days.

Does it send my content anywhere?

No. All analysis runs on your own server. The plugin makes no external requests
of any kind.

What happens to my data if I uninstall?

Plugin settings are removed. Editorial decisions stored on individual posts,
such as which link suggestions you accepted, are left in place so that
reinstalling does not lose your work.

Will it improve my rankings?

It cannot promise that, and no honest plugin can. What it does is make articles
clearer, better structured and better connected to each other.

Anmeldelser

30. august, 2026
I’ve been testing Titula and really like the concept and overall experience. The plugin is clean, useful, and has a lot of potential. I’d love to see more detailed and accurate feedback in the article quality assessment, along with more display/layout options in future updates. Great work so far!
Læs 1 anmeldelse

Bidragsydere & udviklere

“Titula” er open source-software. Følgende personer har bidraget til dette plugin.

Bidragsydere

Oversæt “Titula” til dit eget sprog.

Interesseret i udvikling?

Gennemse koden, tjek SVN repository, eller abonner på udviklerloggen via RSS.

Ændringslog

1.1.4

The table of contents shows the whole article again, and four issues Plugin
Check raised are fixed.

  • The list no longer folds away after eight entries. A table of contents exists
    to show the shape of the piece, and on a guide with twelve sections it was
    showing two thirds of it and a button. Sites still sitting on that old
    default are moved to the full list on upgrade; a site that chose its own
    number keeps it.
  • Fixed: on a theme that does not define screen-reader-text, the icon-only
    back link printed the word “Contents” beside the icon. The plugin now carries
    its own implementation of that class and no longer depends on the theme.
  • The row is the target in the table of contents, not just the words: hover and
    focus cover the whole entry, and the entry you are reading is marked on its
    edge without the text shifting.
  • The heading you arrive at from the table of contents is outlined for a moment,
    so a jump down a long article lands somewhere visible.
  • Headings wrap evenly rather than leaving one word on the last line.
  • Focus rings on the contents panel, its “view all” button and its entries.
  • A sticky contents panel stops scrolling the article when its list reaches the
    end.
  • Plugin Check: translator comments on three strings, the percent-encoded
    Arabic URL example moved out of a translatable sentence, and WPML’s own
    filter name documented rather than flagged.

1.1.3

The live preview moved to where it can be seen, and the back link got a choice
of arrow.

  • Live preview beside the heading controls instead of below them, following
    the page as you scroll. It was at the foot of a long section, far enough down
    that people did not know the plugin had one.
  • Six shapes for the “back to contents” link: the original list-and-arrow, a
    plain arrow, a chevron, an arrow meeting a rule, a return arrow and a plain
    list. Picked from cards that draw the real icon; mirrored in a right-to-left
    article so an arrow still points back the way the reader came.
  • Press / anywhere on the settings screen to jump to the finder, and the
    finder now counts a picker once rather than once per card.
  • The section list marks the group you are reading, opening a section takes
    you to the top of it, and its heading takes focus so a screen reader says
    where you are.
  • Printing an article no longer prints “Contents” beside every heading, keeps
    a heading with the section it introduces, and avoids breaking a panel, a
    table row or a figure across pages.
  • The icon-only back link has a tap target a finger can hit, and a focus ring
    a keyboard user can see.

1.1.2

Orientation. The dashboard now answers three questions before it is asked: what
is this section set to, what else is in it, and where is that one setting.

  • A finder above the settings. Type two letters and every matching control on
    the screen is listed with the section it lives in; choosing one opens that
    section, scrolls to the control and marks it.
  • Each section shows what it is currently set to, read from your saved settings
    • the article style, the heading system, how many components are on.
  • Every group of settings is now titled, and a section with several of them
    prints a short list of links to each.
  • The sixteen components are grouped by the job they do rather than listed in
    one run of sixteen.
  • A section you have edited but not saved is marked in the navigation, and the
    end of each design section offers the next one.
  • The screen was redrawn on two surfaces – a navigation panel and the open
    section – so a card no longer sits inside a card. The navigation follows you
    down a long section.
  • Fewer bytes: the settings form is printed only on a section that has
    controls, and the library summary only where a figure is shown.

1.1.1

One administrative home, and a clearer product. Every setting is now edited in
the Titula dashboard, grouped by what it is for: Article design, Article
health, Optional and Advanced. Nothing moved in storage and no setting was
renamed or removed.

  • Saving returns you to the section you were editing. The form’s return address
    is written by the server for the open section instead of being taken from the
    request URL, which is why a save used to land on Overview.
  • Settings > Titula is no longer a separate destination. The old address still
    works and forwards to the section that replaced it, as do the old tab
    addresses.
  • Information Quality is gone from the dashboard. The measurement itself stays:
    it is one of the five Editorial Readiness dimensions in the post editor.
  • Internal Linking keeps every feature and moves under Optional. Topic
    structure and decision history are shown inside it rather than as tabs of
    their own, and it no longer supplies the dashboard’s headline figures.
  • How It Works is replaced by a five-step setup guide on the Overview.
  • Arabic typography, text direction, reading speed, Latin permalinks and Hijri
    dates moved from the linking screen to Appearance, where reading comfort is
    decided. The editorial preset moved to Components; the interface language to
    Advanced.
  • The scoped reset buttons print after everything they reset, rather than in
    the middle of the section.
  • Analysis reports what articles are missing; its link counts moved to Internal
    Linking.
  • Fewer queries: the library summary is read only by the screens that show it.
  • Narrow screens no longer scroll sideways, and the link-rules table scrolls
    inside its own box.

1.1.0

Presentation, compatibility and correctness. An existing site keeps its current
behaviour on upgrade: the two settings introduced here that could change what a
visitor sees are written to their previous values during the upgrade, and only
change if you choose to change them.

New

  • Headings Studio: a Headings screen with a visual style picker instead of
    a dropdown of names, six coordinated heading systems that set H2, H3 and H4
    together, hierarchy controls for weight, accent strength, decoration width,
    numbering and alignment, and a live preview with desktop, tablet, mobile,
    LTR and RTL views. Nothing is saved until you press Save Changes.
  • Sixteen heading treatments and six table-of-contents styles.
  • Seven accent palettes plus a custom colour. The default still follows the
    colour detected from your theme.
  • Text direction read from the article’s own words rather than the site
    language, so an article written in a different script from the site is no
    longer laid out the wrong way round. Off for existing sites until enabled.

Fixed

  • Component stylesheets are chosen from a single list of every component, so an
    article using only Facts, Verdict, Pros and cons, Checklist, Key takeaways,
    Summary, Author or Related no longer renders unstyled.
  • Language is no longer guessed from text direction. Persian and Urdu are not
    Arabic and French is not English, so a lang attribute is now written only
    where a multilingual plugin, the site locale or a filter actually knows the
    answer, and omitted otherwise.
  • Generic meta names such as faq, summary and steps are no longer read on
    new installations, where they collide with ACF fields, themes and other
    plugins. Existing installations keep reading them, and no field belonging to
    another plugin is ever written to or deleted.
  • Custom fields returning repeaters, groups, image arrays, relationships or
    nested arrays no longer produce “Array to string conversion” warnings.
  • Live analysis in the editor now judges the content on screen rather than the
    last saved version, including whether the article is excluded from
    processing.
  • The table stylesheet is requested when a table is detected in the content or
    when a shortcode or dynamic block might render one, rather than on every
    article on a site with tables enabled. Detection is deliberately cautious:
    it errs towards loading rather than risk an unstyled table.
  • Admin confirmation dialogs and layout moved out of inline attributes into the
    enqueued stylesheet and script, keeping the messages translatable.
  • Dashboard progress text is fully translatable instead of assembling an
    English word onto a translated phrase.
  • Uninstall now also removes the rebuildable content index and suggestion list,
    while keeping editorial decisions such as chosen styles, accepted links and
    review dates.

1.0.0

  • First public release.