From 86374eae688fd184fdd57e876a534ebc37b19974 Mon Sep 17 00:00:00 2001 From: SayaAndy Date: Sun, 21 Jun 2026 03:17:55 +0700 Subject: feat: add bing verification meta refactor: allow custom meta fields --- config/config.go | 6 +++--- config/config.prod.yaml | 8 ++++++-- internal/router/handlers/root.go | 7 ++----- internal/router/router.go | 2 +- 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 } -- cgit v1.3.1+13