27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# tools/
|
|
|
|
## seo_inject.py
|
|
|
|
Injects a technical-SEO block into every language page (`en|mk|si/**/index.html`)
|
|
and regenerates `sitemap.xml` + `robots.txt`. Safe to re-run — the block lives
|
|
between `<!-- SEO:START -->` and `<!-- SEO:END -->` and is replaced in place.
|
|
|
|
The block adds: `meta description` (auto-extracted from the page's lead/subtitle
|
|
where available), `canonical`, `hreflang` alternates (en / mk / **sl** / x-default),
|
|
Open Graph, Twitter Card, and an Organization JSON-LD.
|
|
|
|
All absolute URLs point at the **final** domain `https://msosorg.com` (not the
|
|
temporary host), so nothing needs rewriting at launch. Note: the Slovene folder
|
|
is `/si/` but the ISO code is `sl` — the script maps `si → sl` for hreflang/locale.
|
|
|
|
### Usage
|
|
|
|
```sh
|
|
python tools/seo_inject.py # dry run: print the block for pilot pages
|
|
python tools/seo_inject.py --all # write the block into every page
|
|
python tools/seo_inject.py --all --sitemap # also rebuild sitemap.xml + robots.txt
|
|
```
|
|
|
|
Run `--all --sitemap` after adding, renaming, or deleting any page so canonical
|
|
tags, hreflang alternates, and the sitemap stay in sync.
|