@@ -628,6 +628,58 @@ Nav and footer restructured for the company+product site (agreed IA):
628628 the Company column (colophon keeps copyright + language switcher).
629629- The pricing calculator stays out of the nav (noindex + gated by design).
630630
631+ ### 29. OnGres blog → ` /blog/ ` (unified)
632+
633+ 31 ongres.com posts merged into the existing blog (source: ` ongres ` repo,
634+ ` content/en/blog/ ` ). Both sites share the same blog machinery (TOML front
635+ matter, ` tags ` /` planet ` /` author ` taxonomies, identical permalink patterns), so
636+ posts carry over verbatim — tags and Planet PostgreSQL handles preserved.
637+
638+ - ** Slugs preserved 1:1** with live ongres.com (filename-derived; verified
639+ against the built ongres ` public/ ` ). The one filename containing a space was
640+ renamed (` toast_and_its_influences_on_parallelism_in_postgres.md ` ) with
641+ explicit ` url ` front matter keeping the live slug
642+ (` …influences_-on_parallelism… ` ), so the future ongres.com→stackgres.io
643+ redirect map is a pure host swap for every post.
644+ - ** Authors** : 10 ongres ` data/authors/*.toml ` copied; ` aht ` deduped (the
645+ StackGres version wins). Author pics (` img/team-*.jpg ` ) already present from
646+ the step-27 asset copy.
647+ - ** Assets** : ongres theme ` img/blog/ ` (55 files + ` avatars/ ` ) →
648+ ` web/static/img/blog/ ` (zero name collisions with the StackGres theme's
649+ ` img/blog/ ` ; theme untouched). Page-relative ` content/en/blog/img/ ` copied
650+ alongside the posts.
651+ - ** Shortcodes** : ` pgconf.html ` copied to ` web/layouts/shortcodes/ `
652+ (postgresqlco.nf embeds); the one positional ` {{</* tweet <id> */>}} ` call
653+ (removed in modern Hugo, and the replacement fetches from the Twitter API at
654+ build time) was replaced with a static ` twitter.com/i/status/<id> ` link.
655+ - ** Rebrand applied** (same rules as step 27's sweep): ` OnGres ` →` StackGres `
656+ (sparing ` @OnGresINC ` ), ` ongres.com ` →` stackgres.io ` , ` @ongres.com ` emails →
657+ ` @stackgres.io ` ; ` gitlab.com/ongresinc/… ` and ` twitter.com/ongresinc ` left
658+ intact.
659+ - Gotcha (twice now): ` hugo serve ` without ` --disableFastRender ` wedges on
660+ transient mid-edit states (served truncated HTML once; a permanent 500 error
661+ page after the bulk post copy). Serve with ` --disableFastRender ` during bulk
662+ content work.
663+
664+ Archive polish (same phase):
665+
666+ - Every ported post got a ` description ` in front matter (hand-written summary
667+ of its content; SEO length) — the archive cards and ` <meta description> `
668+ prefer it over ` .Summary ` .
669+ - ** Pagination enabled** : the theme's ` _default/list.html ` paginates but ships
670+ its controls commented out. Project overrides ` layouts/_default/list.html `
671+ (call enabled, outside ` #postList ` ) + ` partials/pagination.html ` (centered
672+ ` ‹ 1 · 2 · 3 › ` pager over a ` .separator ` line; styling hooks ` .pagination ` ,
673+ ` .current ` , ` .dot ` , ` .prev ` /` .next ` ). ` [pagination] pagerSize = 9 ` in config
674+ so 3-column archive pages hold a multiple of 3. The pager needs
675+ ` position: relative ` (site.css) or the section's ` .gradientOverlay ` swallows
676+ its clicks.
677+ - ** All posts equal on archives** : thumbnails removed from the summary card
678+ (single posts keep theirs) and the theme's full-width "featured"
679+ ` :first-child ` card neutralized in site.css — the override must mirror the
680+ sibling cards' computed ` flex-basis: calc(33.3333% - 40px) ` exactly, or the
681+ first row breaks.
682+
631683## Verified
632684
633685- ` hugo ` builds with ** 0 errors** (379 pages)
0 commit comments