diff --git a/javascripts/discourse/initializers/discourse-custom-header-links.js b/javascripts/discourse/initializers/discourse-custom-header-links.js
index f87889f..5a8df60 100644
--- a/javascripts/discourse/initializers/discourse-custom-header-links.js
+++ b/javascripts/discourse/initializers/discourse-custom-header-links.js
@@ -24,11 +24,18 @@ export default {
.split("|")
.filter(Boolean)
.map((customHeaderLinksArray) => {
- const [linkText, linkTitle, linkHref, device, target, keepOnScroll] =
- customHeaderLinksArray
- .split(",")
- .filter(Boolean)
- .map((x) => x.trim());
+ const [
+ linkText,
+ linkTitle,
+ linkHref,
+ device,
+ target,
+ keepOnScroll,
+ locale,
+ ] = customHeaderLinksArray
+ .split(",")
+ .filter(Boolean)
+ .map((x) => x.trim());
const deviceClass = `.${device}`;
const linkTarget = target === "self" ? "" : "_blank";
@@ -37,6 +44,8 @@ export default {
.toLowerCase()
.replace(/\s/gi, "-")}-custom-header-links`;
+ const localeClass = locale === "" ? "" : `.${locale}`;
+
const anchorAttributes = {
title: linkTitle,
href: linkHref,
@@ -45,9 +54,17 @@ export default {
anchorAttributes.target = linkTarget;
}
+ if (
+ locale !== "" &&
+ document.documentElement.lang &&
+ document.documentElement.lang !== locale
+ ) {
+ return;
+ }
+
headerLinks.push(
h(
- `li.headerLink${deviceClass}${keepOnScrollClass}${linkClass}`,
+ `li.headerLink${deviceClass}${keepOnScrollClass}${localeClass}${linkClass}`,
h("a", anchorAttributes, linkText)
)
);
diff --git a/settings.yml b/settings.yml
index 184f147..12b1b5b 100644
--- a/settings.yml
+++ b/settings.yml
@@ -1,9 +1,9 @@
Custom_header_links:
type: list
list_type: simple
- default: "External link, this link will open in a new tab, https://meta.discourse.org, vdo, blank, remove|Most Liked, Posts with the most amount of likes, /latest/?order=op_likes, vdo, self, keep|Privacy, Our Privacy Policy, /privacy, vdm, self, keep"
+ default: "External link, this link will open in a new tab, https://meta.discourse.org, vdo, blank, remove, en|Most Liked, Posts with the most amount of likes, /latest/?order=op_likes, vdo, self, keep, en|Privacy, Our Privacy Policy, /privacy, vdm, self, keep, en"
description:
- en: "Comma delimited in this order: link text, link title, URL, view, target, hide on scroll
Link text: The text for the link
Link title: the text that shows when the link is hovered
URL: The path for the link (can be relative)
View: vdm = desktop and mobile, vdo = desktop only, vmo = mobile only
Target: blank = opens in a new tab, self = opens in the same tab
Hide on scroll: remove = hides the link when the title is expanded on topic pages keep = keeps the link visible even when the title is visible on topic pages"
+ en: "Comma delimited in this order: link text, link title, URL, view, target, hide on scroll
Link text: The text for the link
Link title: the text that shows when the link is hovered
URL: The path for the link (can be relative)
View: vdm = desktop and mobile, vdo = desktop only, vmo = mobile only
Target: blank = opens in a new tab, self = opens in the same tab
Hide on scroll: remove = hides the link when the title is expanded on topic pages keep = keeps the link visible even when the title is visible on topic pages
Language: blank = no locale assoaciated to the link, else insert a locale code (en, fr, de, ...)"
links_position:
default: right