代码之家  ›  专栏  ›  技术社区  ›  misteraidan

Sitecore xsl本地化

  •  1
  • misteraidan  · 技术社区  · 16 年前

    使用..进行测试时。。

    /xsl/sample rendering.xslt

    …这是Sitecore开箱即用的简单呈现,我注意到,在输出项的子项的循环中,包括所有子项,而不管这些项是否具有当前语言的版本。

    这正常吗。。。有没有办法强制/检查语言以确保只显示我们想要的项目?

    1 回复  |  直到 16 年前
        1
  •  2
  •   Bartłomiej Mucha    13 年前

    Sitecore项目将始终跨越语言障碍共存。这与以下事实有关(至少我认为这是原因之一),即它们都继承自标准模板,并且该模板具有一些标记为“共享”的字段,即隐式可用于任何语言。

    但是,该项没有当前语言的版本。字段值将返回null。

    通过将示例Rendering.xsl修改为以下内容,您可以自己进行测试:

    <xsl:for-each select="item">
      <xsl:value-of select="@name" /> ( <sc:text field="title" /> )
      <br />
    </xsl:for-each> 
    

    我做了一个快速测试,这是我的结果。示例项3是用非上下文语言创建的。

    Sitecore欢迎来到Sitecore

    样本项目1(样本项目1) 样本项目2(样本项目2) 样本项目3()

    推荐文章