在 Kentico 网站上实施语言辅助功能修复时遇到问题

Trouble implementing the language accessibility fix on a Kentico Site

如标题所述,我对此有疑问,利用 Brenden Kehren 最初从该线程提出的代码:https://devnet.kentico.com/questions/kentico-9-how-to-define-language-in-html

<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
    if (CurrentDocument != null)
    {          
        CMS.UIControls.ContentPage page= this.Page as CMS.UIControls.ContentPage;
        if (page != null)
        {
            string lang= CMS.Localization.LocalizationContext.CurrentCulture.CultureCode;
            page.XmlNamespace += " lang=\"" + lang + "\"";
            page.XmlNamespace += " xml:lang=\"" + lang + "\"";
        }
    }
}
</script>

然而对于我来说,我似乎无法让它工作,继续获取:Uncaught SyntaxError: Unexpected token void

在该行:protected void Page_Load(object sender, EventArgs e)

我已将代码放在主模板的 header 中,我打开 Header 选项卡,然后在显示 "Add HEAD element content:" 的文本框中粘贴提供的完整片段。包括 。 运行 Kentico 9 如果有帮助的话。

我无法让它工作,这似乎很奇怪。有什么建议吗?

该站点具有多种文化,有英语和西班牙语版本,我认为 Kentico 在这种情况下能够自动设置语言标签,但显然不能。

它应该在布局中(所有区域所在的位置),即在 body 标签之后。其次 CultureCode 取决于您的 URL,您的 url 必须包含文化代码。

这段代码应该放在后面的代码中。布局需要在代码隐藏部分中用于此目的。如果在 HTML 段中添加,浏览器将无法理解此代码。

如果像这样将脚本直接放在布局中:

它应该有以下输出:(html前后)