Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sharepoint 多语言网站的列表视图web部件中的自定义列不具有自定义语言标签。保留默认语言_Sharepoint_Sharepoint 2010_Sharepoint Designer - Fatal编程技术网

Sharepoint 多语言网站的列表视图web部件中的自定义列不具有自定义语言标签。保留默认语言

Sharepoint 多语言网站的列表视图web部件中的自定义列不具有自定义语言标签。保留默认语言,sharepoint,sharepoint-2010,sharepoint-designer,Sharepoint,Sharepoint 2010,Sharepoint Designer,到目前为止,我发现了一个相当独特的问题。我们正在运行一个多语言SharePoint 2010环境,默认语言为英语,次要语言为法语。我们已经将站点设置为差异关系,但我正在讨论的问题也发生在变体之外 我们在变体外部(但在集合内部)创建了一个库,这两个站点必须共享。通过Designer创建了一个列表视图web部件,将其添加到每个站点,以便快速查看列表。如果我们在库中切换到法语,那么更新列标签,它将记住设置(因为资源文件),并在语言来回翻转时维护它。它不起作用的地方是作为变体中的web部件或语言不同的地

到目前为止,我发现了一个相当独特的问题。我们正在运行一个多语言SharePoint 2010环境,默认语言为英语,次要语言为法语。我们已经将站点设置为差异关系,但我正在讨论的问题也发生在变体之外

我们在变体外部(但在集合内部)创建了一个库,这两个站点必须共享。通过Designer创建了一个列表视图web部件,将其添加到每个站点,以便快速查看列表。如果我们在库中切换到法语,那么更新列标签,它将记住设置(因为资源文件),并在语言来回翻转时维护它。它不起作用的地方是作为变体中的web部件或语言不同的地方

如果语言不同,则开箱即用列可以查找,但自定义列(所有站点列而不是library\list列)保留为英文标签。无论是在变体内部还是外部,浏览器语言发生了变化。它总是回到英语。就像它没有使用列表中使用的相同资源文件一样

我创建了一个自定义视图,并根据使用xslt对其进行了修改,但这只在列表中起作用,在列表视图中也没有出现

我不可能是第一个遇到它的人,或者我没有正确地执行搜索,没有人记录过对此的修复,或者这是我们无法用OOTB工具修复的。这是另一件事,解决方案必须通过OOTB或客户端的微小更改来完成。我无法启动VisualStudio,因为他们正在试用Office 365,并且已经为迁移规定了“无自定义代码”(这对我来说非常困难。我喜欢我的代码;P)


提前谢谢大家。

好的,我想出了一个解决办法。我在页面上编辑了web部件的XSLT。我做了以下工作:

<xsl:with-param name="fieldtitle">
  <xsl:value-of select="@DisplayName"/>
</xsl:with-param>
  • 在Site Ccollection中创建变体
  • 在变体外部创建库
  • 添加库所需的所有列。在你继续之前,所有的专栏都在那里是非常重要的
  • 创建法语和英语视图
  • 通过设计器创建列表视图web部件
  • 选择要使用的适当视图,将列表视图web部件添加到每个站点
  • 在SharePoint Designer 2010中编辑页面
  • 将光标放在要修改的列中
  • 单击功能区上“列表视图工具”中的“设计”
  • 然后单击CustomizeXSLT并选择CustomizeItem。选择此选项,否则将生成大量不必要的XSL代码
  • 您正在寻找类似以下内容的作品:

    <xsl:with-param name="fieldtitle">
      <xsl:value-of select="@DisplayName"/>
    </xsl:with-param>
    
    
    
  • 通过键入所需的实际列名对其进行修改。你应该以这样的方式结束:

    <xsl:with-param name="fieldtitle">
      New Column Name.
    </xsl:with-param>
    
    
    新列名。
    
  • 现在,仅此页面上的列将被重命名

  • 有一些警告:

  • 在发布门户中似乎不起作用。我认为这与SP在这种情况下存储页面的方式有关。在发布门户中,您只能修改页面布局,因为我们需要修改内容,所以页面布局不起作用
  • 如果添加另一列,则需要重复XSLT修改
  • 无论如何,我希望这能帮助其他和我有同样问题或需要的人