KeyspiderKeyspider
WordPress & Drupal

Turn Your PDF Archive Into Pages Your CMS Can Actually Publish.

Headings, tables and images rebuilt as real pages in WordPress or Drupal. The original file stays available for download.

Book a demo
Drupal 10 & 11WordPress 6.0+WCAG 2.1/2.2 AA outputOCR for scanned filesOriginal document preserved
You have this
A PDF nobody can find

Not in search results. Not readable on a phone.

CONVERTONCE
You get this, in either CMS
WordPressGutenberg blocks or Classic HTML
DrupalCKEditor 5 or Layout Builder
Searchable
Readable on a phone
Screen-reader ready
Still downloadable
1 in 3
government PDFs fail basic WCAG 2.1/2.2 AA accessibility checks
74%
of Section 508 complaints involve PDF documents and attachments
Zero
retyping, in either CMS, once the converter has mapped the document
The problem

Remediating a PDF Makes It Compliant. Converting It Makes It Findable.

The average government or university site hosts thousands of documents, some dating back to before the current CMS even existed. Tagging them is the floor. Most accessibility programs stop right there, because tagging is what the audit checks for, not what a resident actually experiences. A tagged PDF is still a download. It opens outside your site, ignores your mobile layout, and never once surfaces in a resident's or student's search results.

01
Invisible to search

Users search for “leaf collection schedule” and get nothing, because the answer is on page 14 of a PDF that search cannot read.

02
Unreadable on a phone

A fixed-width letter page forces pinch-and-zoom on the device most people use to reach you.

03
Impossible to keep current

A changed fee means re-opening the source file, re-exporting, re-tagging, re-uploading. Most teams simply do not.

04
A liability that compounds

Under ADA Title II every unaudited document is exposure, and the archive grows every budget cycle.

The converter

One Document. Two Content Models. No Copy-Paste.

The same source PDF, mapped for both platforms side by side. Every detected region gets labelled. Every block is yours to accept, merge, or discard before anything gets created. And nothing goes live until a human clears whatever got flagged, because a wrong heading level does more damage than a slow one.

SOURCEUntagged · high risk
budget-fy2026.pdf · page 1 of 24
TITLEFY 2026 Adopted Budget
IMAGE · NEEDS ALT TEXT
Mapped automaticallyNeeds your input
WORDPRESSWCAG 2.1/2.2 AA · pass
Page · /budget/fy-2026/
core/headingLevel 1 title
core/paragraph3 paragraphs, in order
core/tableHeader row with scope
core/imageAlt text required
core/fileOriginal PDF attached
<!-- wp:heading {"level":1} -->
<h1>FY 2026 Adopted Budget</h1>
<!-- /wp:heading -->
Gutenberg blocks by default. Choose Classic output and the same content arrives as semantic HTML instead.
DRUPALWCAG 2.1/2.2 AA · pass
Node · Basic page · /budget/fy-2026
node.titleFY 2026 Adopted Budget
bodyFiltered HTML, CKEditor 5
tableCaption and scoped headers
media:imageAlt text required
media:documentOriginal PDF attached
<drupal-media
  data-entity-type="media"
  data-entity-uuid="a1f9…"
  alt="Fund allocation chart">
</drupal-media>
Media entities are created and referenced properly, so alt text lives on the entity and is reused everywhere it appears.

Interfaces shown for illustration. Detected regions and the resulting content model depend on the source document.

The mapping

Every Element Has a Native Home in Both Platforms

Nothing gets dumped into a raw HTML block or a full-width embed, the shortcut most PDF-to-web tools take. Structure becomes structure. In whichever editor your team already uses, with no retraining required.

How each PDF element is rebuilt in WordPress and Drupal.
In the PDFWP · GutenbergWP · ClassicDrupal
Document titlecore/heading<h1>node.title
Section headingcore/heading h2–h4<h2> … <h4>body · <h2>–<h4>
Body paragraphcore/paragraph<p>body · <p>
Bulleted / numbered listcore/list<ul> / <ol>body · <ul> / <ol>
Table with header rowcore/table<table> + <th scope>CKEditor 5 table
Image, chart or logocore/image + alt<img alt="">media:image entity
Pull quote / calloutcore/quote<blockquote>body · <blockquote>
Multi-column pagecore/columnsstacked <div>Layout Builder section
Repeating content blockreusable blockinline HTMLParagraphs entity
The original filecore/file<a href="…pdf">media:document
Old document URL301 redirect301 redirectRedirect module
How it works

From Document to Published Page in Four Steps

STEP 1
Point at your documents

Pick files from the WordPress Media Library or the Drupal media library, upload new ones, or hand over a URL. Bulk-select an entire folder or a saved view.

STEP 2
Extract and OCR

Text, tables and images are pulled out with reading order intact. Scanned pages run through OCR first, so image-only documents still yield real text.

STEP 3
Map to your content model

Regions become Gutenberg blocks, Classic HTML, CKEditor 5 markup or Layout Builder components. Heading levels are inferred from the document's own hierarchy.

STEP 4
Review, then publish

Anything uncertain is flagged rather than guessed, starting with alt text. Approve and it becomes a draft page or node with a clean path and the original attached.

The result

One Conversion Fixes Four Problems at Once

Accessibility

Real headings, list and table semantics, and enforced alt text. Drupal's media entities keep that alt text attached wherever the image is reused.

Findability

The content becomes a page with its own title and path, indexable by Keyspider AI Search and by public search engines.

Mobile and translation

Text reflows to any screen and can enter your translation workflow. Neither is possible inside a fixed-layout PDF.

Maintainability

Next year's fee change is an inline edit by the department that owns it, not another export and re-tag cycle.

Example document · before & after
Hosted PDF
31/100
Accessibility risk score
✕ No tag structure✕ No document title✕ Images without alt✕ Not in site search
Converted page
98/100
WCAG 2.1/2.2 AA validation
✓ Semantic headings✓ Scoped table headers✓ Alt text on every image✓ Indexed and searchable
Illustrative scores from a 24-page budget document. Your results depend on the source file. Scanned originals need more review than digitally generated ones.
Who uses it

Built for Public-Sector Document Archives

Local government

Meet the ADA Title II deadline without retyping a decade of minutes.

Permits, bylaws, council minutes and fee schedules that have never been accessibility-reviewed. Convert the ones residents actually look for, and keep the rest as downloads.

Bulk-convert the top 200 most-requested documents first
Higher education

One converter across every faculty site, whatever CMS each one runs.

Faculties rarely agree on a platform. Course handbooks and policy PDFs convert the same way whether the department site is WordPress or Drupal.

Mixed-CMS estates, one workflow
State & federal agencies

Drupal-heavy estates, with an audit trail on every conversion.

Federal and state sites skew heavily to Drupal. Each conversion records what changed, who approved it, and which WCAG criteria the result satisfies.

Exportable record for legal and IG review
Scope

What Converts Cleanly, and What Needs a Human

Automatic conversion handles most of a typical government document, easily the bulk of it. The rest gets flagged for review instead of silently mangled, because a wrong table header is worse than no table at all. Ten minutes of review on the parts that need a human eye beats finding out months later that a benefits table read backwards.

Drupal 10 & 11WordPress 6.0+Multisite & multi-nodeAny content type
Converts automatically
Headings and body textBulleted and numbered listsSimple and merged-cell tablesEmbedded images and chartsLinks, emails, phone numbersTwo- and three-column layoutsFootnotes and captions
Flagged for review
Alt text for every imageCharts needing a data summaryScanned handwritingFillable form fieldsNested tablesSignature and seal graphicsLow-resolution scans
Better together

ADA Audit finds the problem documents. PDF to Page fixes them.

The Keyspider ADA Audit crawls your site and scores every page and PDF against WCAG 2.1 and 2.2 AA. PDF to Page turns the worst offenders into real content. AI Search then indexes what used to be invisible to it. Each product works fine on its own. The sequence is where the compounding happens, and most agencies only discover that after they've already bought one of the three.

Deployment
WordPressPlugin, Gutenberg or Classic
DrupalModule, CKEditor 5 or Layout Builder
Other platformsREST API, returns clean HTML
Bulk conversionFolder, view or media query
RedirectsOld document URL to new page

Questions teams ask first

Do we lose the original PDF?

No. The file stays in your media library and is attached to the new page or node as a download, so records requirements and existing citations still hold.

How is the Drupal output different from the WordPress output?

The content is the same. The container differs. WordPress receives Gutenberg blocks or Classic HTML in the post body. Drupal receives a node with the title on the title field, filtered HTML in the body, and images and documents created as media entities rather than raw file references.

Does it work with Layout Builder and Paragraphs?

Yes. Multi-column documents can map to Layout Builder sections instead of a single body field, and repeating structures can be created as Paragraphs entities. Choose the target per content type once, and it applies to every conversion after that.

What happens to links pointing at the old PDF?

You can create a redirect from the document URL to the new page during conversion, using the Redirect module in Drupal or your redirect plugin in WordPress. You can also leave both live.

Can we convert a whole archive at once?

Bulk conversion creates one draft per document. Drafts wait for a human to clear flagged items before anything publishes, so a thousand-document run does not put a thousand pages live unreviewed.

Is a converted page enough for ADA Title II?

Converted pages are validated against WCAG 2.1 AA before publishing. If you keep the PDF available alongside the page, that document still needs to meet accessibility requirements on its own.

Free conversion

Bring your worst PDF. We will show you the page.

Send us one document and we'll convert it against your actual CMS, not a demo environment that looks nothing like your stack. You'll see the blocks, the markup, and everything the converter flagged for review, warts included.

One of your own documents, not a generic sampleGutenberg, Classic, CKEditor 5 or Layout Builder outputA migration estimate for the rest of your archiveNo obligation and no hard sell

Free for government agencies and accredited universities. Contact us to confirm eligibility.

Convert a PDF free

Tell us where the document lives and we will send the converted page back.

Which CMS do you publish with? *
Or leave this blank and attach a file once we reply.

Responds within 1 business day · No AI training on your data