The Sources sections on the Welcome Days, accommodation-search and
Ad futura scholarship articles used bare <ul>/<ol> lists, which rendered
as default bullets/numbers with plain blue links instead of the site's
standard source-list style (chain icon, teal links, row dividers).
Add class="guide-linklist" to the Sources lists (converting Ad futura's
<ol> to <ul>) in the content/ source markdown and the generated en/mk/si
pages, matching the Student Welcome Guide. Edits scoped to the affected
articles to avoid unrelated build-tool reformatting churn.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- New Press & media page in all three languages: press-enquiries contact,
a 6-way logo download grid (EN/SI/MK x colour/white), an "MSOS at a glance"
fact sheet (full legal name + preferred name), and a grouped coverage list
(media, universities & institutions, official records, reference, government)
with 29 verified third-party links, each described in EN/MK/SL.
- Styling in css/pages/_press.css (imported by main.css), on the site's tokens.
- Footer: added a "Press & media" link to the Organisation column on every page
(all languages, relative paths correct for each page depth).
- SEO/sitemap refreshed so the new pages carry NGO schema + hreflang.
MK/SI copy is AI-drafted and pending a native proofread.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Generative Engine Optimization pass so AI answer engines (ChatGPT, Gemini,
Perplexity, AI Overviews) can confidently identify and cite MSOS.
Schema (tools/seo_inject.py, propagated to all 231 pages):
- FAQPage JSON-LD parsed from the /faq/ Q&A blocks (33 Q&A x EN/MK/SI)
- Organization upgraded to NGO with entity-disambiguation fields:
alternateName (all spellings), description, areaServed Slovenia,
knowsLanguage, and foundingDate 2023-03-05
- Event JSON-LD on all 9 /projects/ recap pages (date + real location)
Autonomous for future content (no code edits to add a project):
- Event/Article dates auto-read from the English page's publish date;
event city auto-detected from the body (Slovenian-city whitelist).
ARTICLE_DATES/PROJECT_LOCATIONS are now optional overrides only.
(Auto-detect corrected Paint & Wine to Nova Gorica.)
- build_listings.py: auto-date fallback so undated new content still lists
- pre-commit hook now runs seo_inject.py --all --sitemap first, then
listings/botlinks, and re-stages changed pages (idempotent)
Docs: docs/geo-offsite-worklist.md - copy-paste-ready off-site plan
(Wikidata, Wikipedia fixes, directories, Google Business, AI-visibility tests).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Rework the About Us hero so the eyebrow, title and description are overlaid on
the auto-rotating team images (centred, white, text-shadowed) exactly like the
landing hero, instead of sitting in a separate white band above them. Remove the
old page-header band and move its text into the hero. All three languages.
- Rename the "Who We Are" menu item from "Our team" to "About Us"
(MK "За нас", SI "O nas") across all pages; footer "About us" link unchanged.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Previously /llms.txt and /links-for-bots/ existed but were not linked anywhere,
so users/bots couldn't find them. Following Proxify's pattern, add a "For bots"
footer column (all 225 pages, EN/MK/SI) linking to category link lists and an
AI summary page.
build_botlinks.py now also generates:
/links-for-bots/blog|guide|projects/ per-section link lists (EN/MK/SI)
/links-for-bots/about-msos/ "Hey AI, learn about us" summary
/links-for-bots/ hub + /llms.txt
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add Macedonian and Slovenian versions of the accommodation post (AI-drafted,
flagged for native review), rebuild EN with a proper Student Welcome Guide link
and a real Sources section, and add MK/SI blog index cards. Converter now treats
a secondary "# Sources" heading as a section.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
tools/build_blog.py converts a Markdown source into the site's scrollspy blog
article (title, header, hero, sidebar nav from ## headings, body). First output:
the new EN post "Where to search for student accommodation in Slovenia", added at
the top of the blog index (newest first), dated 2026-08-03, SEO injected.
MK/SI of this post and the rest of the blog batch (refresh 1-5, split trilingual
posts 2-4, personal essay post 7) still to come.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>