1

aspx ファイルのアイコンをデフォルトのアイコンからカスタマイズされたアイコンに変更しようとしています。このセクションでは、results.aspx ページの "fetched properties" の xsl を編集しました。「LegalDocument」コンテンツ タイプのアイテムに LegalDoc16.gif アイコンが表示されるようにしたかったのです。構文を適切に構成する必要がない場合はお知らせください。ContentType:"legaldocument" のように検索すると、すべてのドキュメントを取得できます。contenttype メタデータ プロパティがプルされていることがわかっています。提案してください。

  <div class="srch-Icon" id="{concat($currentId,'_Icon')}"> 
    <xsl:choose>
        <xsl:when test="string(ContentType)='LegalDocument'">
            <img align="absmiddle" src="_layouts/images/LegalDoc16.gif" border="0" alt="{imageurl/@imageurldescription}" />
        </xsl:when>
        <xsl:otherwise>
            <img align="absmiddle" src="{imageurl}" border="0" alt="{imageurl/@imageurldescription}" />
        </xsl:otherwise>  
    </xsl:choose>   
  </div>
4

2 に答える 2

2

ContentType メタデータ プロパティの使用を妨げるバグがあると思います ( http://social.msdn.microsoft.com/Forums/en/sharepoint2010general/thread/cd059e1c-7af6-454c-8568-a22e7755ce8cを参照) 。

新しい管理されたメタデータ プロパティを作成し、それを ows_ContentType クロールされたプロパティ (私は私の CType と呼びます) にマップする必要があります。その後、フル クロールを実行して (最初にインデックスを削除する必要がある場合があります)、プロパティを検索インデックスで使用できるようにします。

次に、Search Core Results Web パーツを編集して追加します

 <Column Name="CType"/>

フェッチされたプロパティ (表示プロパティの下) へ<columns>

次に、xml を次のように更新します。

<xsl:choose>
    <xsl:when test="ctype = 'LegalDocument'">
        <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>

PSこの質問は、おそらく私のxsltが正しくフォーマットされていないと思うの重複です

于 2012-07-24T13:24:00.943 に答える
0

すべてが大丈夫だった。PowerShell を実行する前に、ドキュメント ライブラリに移動し、Linked to Document に基づいてファイルを追加 (およびテスト アップロード ファイルを削除) する必要がありました。その後、うまくいきました。

于 2012-08-22T18:26:24.463 に答える