Jump to content
Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Search engines

From Wikven
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 Google
BingSiteVerificationKey msvalidate.01 Bing
NaverSiteVerificationKey naver-site-verification Naver
YandexSiteVerificationKey yandex-verification Yandex
PinterestSiteVerificationKey p:domain_verify Pinterest
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.