summaryrefslogtreecommitdiffci
diff options
from:
to:
context:
space:
mode:
authorGravatar SayaAndy <saya.andy@posteo.com> 2026-06-21 03:17:55 +0700
committerGravatar SayaAndy <saya.andy@posteo.com> 2026-06-21 03:17:55 +0700
commit86374eae688fd184fdd57e876a534ebc37b19974 (patch)
tree3f2e953275b22f2dfd066cf101afd0f751fe32f1
parentdcfdc44f416296fbbc66ea7dda98b6b61bc2054c (diff)
downloadweb-86374eae688fd184fdd57e876a534ebc37b19974.tar.gz
web-86374eae688fd184fdd57e876a534ebc37b19974.zip
feat: add bing verification meta
refactor: allow custom meta fields
-rw-r--r--config/config.go6
-rw-r--r--config/config.prod.yaml8
-rw-r--r--internal/router/handlers/root.go7
-rw-r--r--internal/router/router.go2
4 files changed, 12 insertions, 11 deletions
diff --git a/config/config.go b/config/config.go
index 8ab1bfc..9185e6a 100644
--- a/config/config.go
+++ b/config/config.go
@@ -20,7 +20,7 @@ type Config struct {
Auth AuthConfig `json:"Auth" yaml:"auth" validate:"required"`
Mail MailConfig `json:"Mail" yaml:"mail" validate:"required"`
CanonicalEndpoint string `json:"CanonicalEndpoint" yaml:"canonicalEndpoint" validate:"required"`
- Meta MetaConfig `json:"Meta" yaml:"meta"`
+ Meta []MetaConfig `json:"Meta" yaml:"meta"`
PhotoStorage PhotoStorageConfig `json:"PhotoStorage" yaml:"photoStorage"`
StaticStorage StaticStorageConfig `json:"StaticStorage" yaml:"staticStorage" validate:"required"`
AllowOrigins []string `json:"AllowOrigins" yaml:"allowOrigins"`
@@ -237,8 +237,8 @@ type TriggerConfig struct {
}
type MetaConfig struct {
- GoogleSiteVerification string `json:"GoogleSiteVerification" yaml:"googleSiteVerification"`
- YandexVerification string `json:"YandexVerification" yaml:"yandexVerification"`
+ Name string `json:"Name" yaml:"name"`
+ Value string `json:"Value" yaml:"value"`
}
type PhotoStorageConfig struct {
diff --git a/config/config.prod.yaml b/config/config.prod.yaml
index ce0941d..6ec00d8 100644
--- a/config/config.prod.yaml
+++ b/config/config.prod.yaml
@@ -55,8 +55,12 @@ mail:
onNewPost: "0/5 * * * *"
canonicalEndpoint: "https://${FQDN}"
meta:
- googleSiteVerification: "${GOOGLE_SITE_VERIFICATION}"
- yandexVerification: "${YANDEX_VERIFICATION}"
+ - name: google-site-verification
+ value: "${GOOGLE_SITE_VERIFICATION}"
+ - name: yandex-verification
+ value: "${YANDEX_VERIFICATION}"
+ - name: msvalidate.01
+ value: "${BING_VERIFICATION}"
photoStorage:
full:
baseUrl: https://cdn.saya.uz/photos/jpeg-full/%s
diff --git a/internal/router/handlers/root.go b/internal/router/handlers/root.go
index 6a011e4..4fc4e31 100644
--- a/internal/router/handlers/root.go
+++ b/internal/router/handlers/root.go
@@ -47,11 +47,8 @@ func (r *RootHandler) AddMeta(c *fiber.Ctx, supplements *router.Supplements, lan
{Property: "og:url", Content: fmt.Sprint(templateMap["CanonicalEndpoint"]) + "/"},
{Property: "og:type", Content: "website"},
}
- if supplements.Meta.GoogleSiteVerification != "" {
- meta = append(meta, router.MetaField{Name: "google-site-verification", Content: supplements.Meta.GoogleSiteVerification})
- }
- if supplements.Meta.YandexVerification != "" {
- meta = append(meta, router.MetaField{Name: "yandex-verification", Content: supplements.Meta.YandexVerification})
+ for _, field := range supplements.Meta {
+ meta = append(meta, router.MetaField{Name: field.Name, Content: field.Value})
}
return meta, nil
}
diff --git a/internal/router/router.go b/internal/router/router.go
index c8b5686..a11a934 100644
--- a/internal/router/router.go
+++ b/internal/router/router.go
@@ -102,7 +102,7 @@ type Supplements struct {
BlogTrigger *blogtrigger.BlogTriggerScheduler
TemplateManager *templatemanager.TemplateManager
MarkdownRenderer goldmark.Markdown
- Meta config.MetaConfig
+ Meta []config.MetaConfig
PhotoStorage config.PhotoStorageConfig
StaticStorage config.StaticStorageConfig
}