mirror of
https://github.com/Sped0n/bridget.git
synced 2026-04-14 10:09:31 -07:00
feat(seo.html): add meta tags for site verification codes (Google, Bing, Yandex, Pinterest, Baidu, So, Sogou) to improve SEO and site ownership verification
feat(analytics.html): create partial to include analytics scripts for various analytics services (Google Analytics, Fathom Analytics, Baidu Analytics, Umami Analytics, Plausible Analytics, Cloudflare Analytics, Splitbee Analytics) to track website traffic and user behavior
This commit is contained in:
@@ -4,3 +4,52 @@ description = "Bridget is a minimal Hugo theme designed for photographers / visu
|
||||
# * if you want to build the js and css from scratch, set this to false and run `npm install` and `npm run build`
|
||||
# * tldr: set this to false if you want to edit the js and css
|
||||
bundled = false
|
||||
|
||||
# Site verification code for Google/Bing/Yandex/Pinterest/Baidu
|
||||
[verification]
|
||||
google = ""
|
||||
bing = ""
|
||||
yandex = ""
|
||||
pinterest = ""
|
||||
baidu = ""
|
||||
so = ""
|
||||
sogou = ""
|
||||
|
||||
# Analytics config
|
||||
[analytics]
|
||||
enable = false
|
||||
# Google Analytics
|
||||
[analytics.google]
|
||||
id = ""
|
||||
# whether to anonymize IP
|
||||
anonymizeIP = true
|
||||
# Fathom Analytics
|
||||
[analytics.fathom]
|
||||
id = ""
|
||||
# server url for your tracker if you're self hosting
|
||||
server = ""
|
||||
# Baidu Analytics
|
||||
[analytics.baidu]
|
||||
id = ""
|
||||
# Umami Analytics
|
||||
[analytics.umami]
|
||||
data_website_id = ""
|
||||
src = ""
|
||||
data_host_url = ""
|
||||
data_domains = ""
|
||||
# Plausible Analytics
|
||||
[analytics.plausible]
|
||||
data_domain = ""
|
||||
src = ""
|
||||
# Cloudflare Analytics
|
||||
[analytics.cloudflare]
|
||||
token = ""
|
||||
# Splitbee Analytics
|
||||
[analytics.splitbee]
|
||||
enable = false
|
||||
# no cookie mode
|
||||
No_cookie = true
|
||||
# respect the do not track setting of the browser
|
||||
Do_not_track = true
|
||||
# token(optional), more info on https://splitbee.io/docs/embed-the-script
|
||||
data_token = ""
|
||||
|
||||
@@ -13,5 +13,8 @@
|
||||
{{- block "main" . -}}
|
||||
{{- end -}}
|
||||
</div>
|
||||
<div class="analytics">
|
||||
{{- partial "plugin/analytics.html" . -}}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
{{- with site.Params.verification.google -}}
|
||||
<meta name="google-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.bing -}}
|
||||
<meta name="msvalidate.01" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.yandex -}}
|
||||
<meta name="yandex-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.pinterest -}}
|
||||
<meta name="p:domain_verify" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.baidu -}}
|
||||
<meta name="baidu-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.sogou -}}
|
||||
<meta name="sogou_site_verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with site.Params.verification.so -}}
|
||||
<meta name="360-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
|
||||
84
layouts/partials/plugin/analytics.html
Normal file
84
layouts/partials/plugin/analytics.html
Normal file
@@ -0,0 +1,84 @@
|
||||
{{- $analytics := site.Params.analytics -}}
|
||||
|
||||
{{- if $analytics.enable -}}
|
||||
{{- /* Google Analytics */ -}}
|
||||
{{- with $analytics.google.id -}}
|
||||
<script type="text/javascript">
|
||||
window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());
|
||||
gtag('config', '{{ . }}'{{ if $analytics.google.anonymizeIP }}, { 'anonymize_ip': true }{{ end }});
|
||||
</script> {{- printf "https://www.googletagmanager.com/gtag/js?id=%v" . | dict "Async" true "Source" | partial "plugin/script.html" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Fathom Analytics */ -}}
|
||||
{{- with $analytics.fathom.id -}}
|
||||
<script type="text/javascript">
|
||||
window.fathom=window.fathom||function(){(fathom.q=fathom.q||[]).push(arguments);};
|
||||
fathom('set', 'siteId', '{{ . }}');
|
||||
fathom('trackPageview');
|
||||
</script> {{- dict "Source" ($analytics.fathom.server | default "cdn.usefathom.com" | printf "https://%v/tracker.js") "Async" true "Attr" "id=fathom-script" | partial "plugin/script.html" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Baidu Analytics */ -}}
|
||||
{{- with $analytics.baidu.id -}}
|
||||
<script>
|
||||
var _hmt = _hmt || [];
|
||||
(function() {
|
||||
var hm = document.createElement("script");
|
||||
hm.src = "https://hm.baidu.com/hm.js?{{ . }}";
|
||||
var s = document.getElementsByTagName("script")[0];
|
||||
s.parentNode.insertBefore(hm, s);
|
||||
})();
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Umami Analytics */ -}}
|
||||
{{- with $analytics.umami.data_website_id -}}
|
||||
<script
|
||||
async
|
||||
defer
|
||||
data-website-id="{{ . }}"
|
||||
src="{{ $analytics.umami.src }}"
|
||||
{{ with $analytics.umami.data_host_url }}data-host-url="{{ . }}"{{ end }}
|
||||
{{ with $analytics.umami.data_domains }}data-domains="{{ . }}"{{ end }}
|
||||
></script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Plausible Analytics */ -}}
|
||||
{{- with $analytics.plausible.data_domain -}}
|
||||
<script
|
||||
async
|
||||
defer
|
||||
data-domain="{{ . }}"
|
||||
src="{{ $analytics.plausible.src }}"
|
||||
></script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Cloudflare Analytics */ -}}
|
||||
{{- with $analytics.cloudflare.token -}}
|
||||
<script
|
||||
defer
|
||||
src="https://static.cloudflareinsights.com/beacon.min.js"
|
||||
data-cf-beacon='{"token": "{{ $analytics.cloudflare.token }}"}'
|
||||
></script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Splitbee Analytics */ -}}
|
||||
{{- if $analytics.splitbee.enable -}}
|
||||
{{- $attr := "" -}}
|
||||
{{- if $analytics.splitbee.Do_not_track -}}
|
||||
{{- $attr = printf `%v data-respect-dnt` $attr -}}
|
||||
{{- end -}}
|
||||
{{- if $analytics.splitbee.No_cookie -}}
|
||||
{{- $attr = printf `%v data-no-cookie` $attr -}}
|
||||
{{- end -}}
|
||||
{{- with $analytics.splitbee.data_token -}}
|
||||
{{- $attr = printf `%v data-token="%v"` $attr . -}}
|
||||
{{- end -}}
|
||||
<script
|
||||
defer
|
||||
{{ with $attr }}{{ . | safeHTMLAttr }}{{ end }}
|
||||
src="https://cdn.splitbee.io/sb.js"
|
||||
></script>
|
||||
{{- end -}}
|
||||
|
||||
{{- end -}}
|
||||
Reference in New Issue
Block a user