Content linked between pages using absolute WordPress URLs -- 100
occurrences across 39 files, many against wp.vicidial.com, the old
WordPress backend host that won't outlive this migration, the rest
against www.vicidial.com in ?page_id=N form.
The export now resolves those IDs against the published page/post set and
emits /slug (or /blog/slug) instead. All 100 resolved; links to
vicihost.com are a separate site and deliberately untouched.
Verified every internal href in the built output corresponds to a page
that actually exists -- no broken links.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Page content separates its major sections with leading <br><br>, which
the old site renders as a blank line before each section heading. Those
breaks were being lost, leaving every section butted up against the
previous one.
Two causes. The content contains malformed `</br>` closing tags, which
browsers treat as a line break but an HTML parser discards, so they
never survived the HTML->Markdown conversion; they're now rewritten to
<br />. And Markdown drops a hard break at the start of a paragraph, so
turndown now emits literal <br /> tags instead of the trailing-two-space
form -- inline, with no trailing newline, since a lone tag on its own
line starts a raw HTML block (CommonMark type 7) and would stop the rest
of the paragraph being parsed as Markdown at all.
Verified against the live old site: paragraph count, <br> count, bold
heading count and per-paragraph break placement now all match exactly.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The front-page/blog listings rendered featured images as 150x150
centre-cropped squares stacked above the text. The theme actually
renders them at 210x150 cropped from the left-top corner
(set_post_thumbnail_size), floated left with a border so the excerpt
wraps beside them -- the CSS for that (#container .attachment-thumbnail)
was already ported, the class just was never applied.
The left-top anchor matters: every featured image is a 930x354 slide
banner whose subject sits in the left portion, so a centre crop cut the
subject out entirely.
Also restores the "Read the Rest..." link (the theme's excerpt_more
filter) and corrects excerpt length -- the theme uses 60 words on the
front page and 30 in the slideshow; the export was baking WordPress's
default 55 for both.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Static brochure/marketing site: 55 pages, 5 posts, 82 attachments, and
the 7-item nav, exported from the wordpress_vicidial DB via
scripts/export-wp.mjs (re-runnable). Layout/styles ported from the
small-business WP theme; homepage slideshow rebuilt as a Splide client
island pulling the latest 5 posts at build time, replacing the old
BJQS jQuery plugin.