我正在尝试更改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}" />
答案 0 :(得分:0)
我相信有一个错误会阻止使用ContentType元数据属性(请参阅http://social.msdn.microsoft.com/Forums/en/sharepoint2010general/thread/cd059e1c-7af6-454c-8568-a22e7755ce8c)
您需要创建一个新的托管元数据属性并将其映射到ows_ContentType已爬网属性(我称之为我的CType),然后执行完全爬网(您可能需要先删除索引)以使该属性可用于搜索索引。
然后编辑搜索核心结果Web部件并添加
<Column Name="CType"/>
在<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>