Search engines
More actions
Publishing a site does not put it in an index. Given WikvenSiteUrl the bake writes dist/sitemap.xml, naming every page it exported at an absolute address, and that file is the site's own account of what it holds: a crawler reading it needs no link to reach a page. What no build can do is tell anybody the file is there.
Announcing the sitemap
Ordinarily robots.txt does it, through the Sitemap: line naming the file. Wikven writes no such file, and on many sites there would be nowhere to put one. A crawler reads robots.txt from the host root and from nowhere else, so a site published under a subdirectory — a project page on a forge, most often — would need the file at an address belonging to whoever owns the host rather than to the site. Where the whole host is yours the file is a step of your own between the bake and the upload, and the Sitemap: line in it can name a sitemap sitting in a subdirectory of that host.
Failing that, each engine has to be told by hand in its own webmaster console, and no shortcut is left: Google's sitemap ping endpoint was withdrawn in 2023 and answers 404, most of what it received having been spam. No console takes a submission until you have proved you control the site.
Proving that the site is yours
Each console offers a few proofs, and the one a static export can always give is a meta tag in the head of every page. Such a tag is about the site rather than about a page, which is not something a page can be written to carry, so it takes an extension: WikiSEO turns one configuration key per engine into one tag. It does not ship in the image, so it needs a source under the WikvenRepositories map like any other third-party extension.
extensions:
- WikiSEO
config:
GoogleSiteVerificationKey: your-token-from-search-console
BingSiteVerificationKey: your-token-from-bing-webmaster-tools
There are six of them, set under config like any other configuration variable, and each writes its own tag:
| Setting | Meta tag | Engine |
|---|---|---|
GoogleSiteVerificationKey |
google-site-verification |
|
BingSiteVerificationKey |
msvalidate.01 |
Bing |
NaverSiteVerificationKey |
naver-site-verification |
Naver |
YandexSiteVerificationKey |
yandex-verification |
Yandex |
PinterestSiteVerificationKey |
p:domain_verify |
|
NortonSiteVerificationKey |
norton-safeweb-site-verification |
Norton Safe Web |
None of these is a credential, so a public repository is no worse a place for one than any other setting: the value grants nothing but the claim, and the engine publishes it back to anyone who fetches a page of the site and reads the tag. This documentation site is claimed with the first of them.