在Kentico网站上实施语言可访问性修复程序时遇到问题

时间:2018-09-07 14:06:59

标签: tags accessibility kentico

正如标题所述,我对此有疑问,请使用此线程最初提出的代码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:意外的令牌无效

在此行:受保护的void Page_Load(对象发送者,EventArgs e)

我已将代码放在主模板的标题中,打开“标题”选项卡,然后在文本框下显示“添加HEAD元素内容:”的位置粘贴了提供的完整代码段。包括 。如果有帮助,请运行Kentico 9。

我无法使它正常工作似乎很奇怪。有什么建议吗?

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

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

如果您将脚本直接放置在这样的布局中:

script code in kentico

它应该具有以下输出:(在html之前和之后)

added language tags in html

答案 2 :(得分:-1)

此代码应放在后面的代码中。本节后面的代码中需要使用布局。如果在HTML段中添加,浏览器将无法理解该代码。