0

我正在尝试更改 searchResult.aspx 页面上“链接到文档”的图标。我在结果的 xslt 中添加了以下内容,但结果 webpart 永远不会呈现,这意味着代码已损坏。我尝试关注 SP2007 文章(http://msdn.microsoft.com/en-us/library/cc789805(v=office.12).aspx),但我的环境是 SP 2010。请提出建议。

<div class="srch-Icon" id="{concat($currentId,'_Icon')}"> 
<xsl:if test="contenttype='LegalLinkedDocument'">  
    <img align="absmiddle" src="_layouts/images/legalLinkedIcon.gif" border="0" alt="{imageurl/@imageurldescription}" />
</xsl:if>
    <img align="absmiddle" src="{imageurl}" border="0" alt="{imageurl/@imageurldescription}" />

4

1 回答 1

0

我相信有一个错误会阻止使用 ContentType 元数据属性(请参阅http://social.msdn.microsoft.com/Forums/en/sharepoint2010general/thread/cd059e1c-7af6-454c-8568-a22e7755ce8c

您需要创建一个新的托管元数据属性并将其映射到 ows_ContentType 已爬网属性(我称为我的 CType),然后进行完全爬网(您可能需要先删除索引)以使该属性在搜索索引中可用。

然后编辑搜索核心结果 web 部件并添加

 <Column Name="CType"/>

到 Fetched Properties(在 Display Properties 下)之后<columns>

然后将您的 xml 更新为以下内容

<xsl:choose>
    <xsl:when test="ctype = 'LegalLinkedDocument'">
        <img align="absmiddle" src="_layouts/images/LegalLinkedDocument.gif" border="0" alt="{imageurl/@imageurldescription}" />
    </xsl:when> 
    <xsl:otherwise>
        <img align="absmiddle" src="{imageurl}" border="0" alt="{imageurl/@imageurldescription}" />
    </xsl:otherwise>
</xsl:choose>
于 2012-07-23T14:14:30.360 回答