GregK Posted June 8, 2021 Share Posted June 8, 2021 (edited) Site URL: https://www.gregorykoefer.com/de/home Hey guys, I've followed the tutorial of https://www.bradgood.net/articles/multi-language-content-on-any-squarespace-template and replaced everything of /es/ with my own slugs (en) It seems to work except, that when I visit the german website, the menu isn't showing. IN the backend everytime I click on the de/home site, the menu loads quickly and dissapears immediately.. Here is my current code I've injected in the footer: <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/2.6.0/css/flag-icon.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(function() { /* SETUP MULTI-LANGUAGE */ var defaultLanguage = 'en'; var lang = location.pathname.split("/")[1]; var defaultClass = 'lang-'+defaultLanguage+''; var itemParent = "nav [class*='collection'],nav [class*='folder'],nav [class*='index'],nav [class*='group']"; if (lang == "" || lang.length > 2 ){ var lang = defaultLanguage; } /* ADD LANGUAGE CLASSES */ $('a[href="/"]').addClass('lang-'+defaultLanguage+'').parents(itemParent).addClass('lang-'+defaultLanguage+''); $('nav a:link:not([href^="http://"]):not([href^="https://"])').each(function () { var langType = $(this).attr('href').split("/")[1]; var multiLanguageClass = 'multilanguage lang-' + langType + ''; if (undefined !== langType && langType.length <= 2) $(this).addClass(multiLanguageClass).parents(itemParent).addClass(multiLanguageClass); }); $('nav button').each(function () { var langTypeFolder = $(this).attr('data-controller-folder-toggle').split("/")[0]; var multiLanguageClass = 'multilanguage lang-' + langTypeFolder + ''; if (undefined !== langTypeFolder && langTypeFolder.length <= 2) $(this).addClass(multiLanguageClass); }); /* HOMEPAGE-LOGO LINKS TO PROPER LANGUAGE HOMEPAGE */ if (lang == "de") { $('a[href="/"]').attr("href", "/de/main/"); } /* ADD EXCLUSION NAV ITEMS */ $('.exclude-me,.exclude-me a').addClass('exclude'); $('.sqs-svg-icon--list a,.SocialLinks-link').addClass('exclude'); /* REMOVE OTHER LANGUAGES AND KEEP EXCLUDED ITEMS */ $('.multilanguage:not(".lang-'+lang+',.exclude")').remove(); }); </script> When I remove the this part /* REMOVE OTHER LANGUAGES AND KEEP EXCLUDED ITEMS */ it shows me the english menu, so something is happening, but I can't figure out why it isn't showing the german menues.. Edited June 8, 2021 by GregK added infos Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment