【发布时间】:2011-03-09 18:27:41
【问题描述】:
我在各个地方都看到过这个问题,但从未见过不涉及安装新 Web 部件(我无法做到)的可行解决方案。
我有一个文档库,其中包含具有特定文档类型的文档,其中包含“区域”的值。
我已设法更改 .webpart 文件和 ContentQueryMain.xsl、Itemstyle.xsl、HeaderStyle.xsl 文档中的“CustomViewFields”参数,并使用 CQWP 的分组功能生成以下输出:
<div class="myDocuments">
<div class="group">
<h2>My region</h2>
<ul>
<li>Document 1</li>
<li>Document 2</li>
<li>Document 3</li>
<li>Document 4</li>
</ul>
</div>
<div class="group">
<h2>My other region</h2>
<ul>
<li>Document 1</li>
<li>Document 2</li>
<li>Document 3</li>
<li>Document 4</li>
</ul>
</div>
</div>
这一切都很好,但我只想按日期排序每个区域最多显示三个文档。
我无法制定任何可以实现此目的的 CAML 查询代码,因此我一直在考虑使用 if 语句在为当前区域创建三个值后删除任何值 - 但不知道什么是CQWP 正在导出的 XML 被证明是困难的。
目前情况如下:
<xsl:if test="(count(preceding-sibling::Region = @Region)) < 3">
<li><xsl:value-of select="{$Region}" /></li>
<xsl:if />
在我将 SharePoint 扔出窗外之前,任何帮助都将不胜感激!
马特
【问题讨论】:
-
这不是一个完整的问题。请指定完整(但尽可能小)的 XML 文档和完整(但尽可能小)想要的结果,并清楚地说明您希望转换做什么/实现。
-
请提供您正在使用的 xslt,以便我修改并将正确的发送给您
-
这是变得棘手的地方——因为它是 Sharepoint Web 部件的输出,我不完全确定 XML 是什么样子——这几乎就像试图盲目地编写 XSLT。再加上 SharePoint 调用三个不同的 XSLT 文件来处理其结果的不同部分,这使得尝试提供示例数据变得非常困难。我将离开并尝试弄清楚 SharePoint 对数据做了什么,然后分享一些测试数据。
标签: sharepoint xslt caml cqwp