Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
??? ???????????? Content Query Web Part ????? ???????????? ?? ????, ??? ??? ? ?????? "Customizing the Content Query Web Part XSL" ?????? ??????? ??? ??? ????????.
?????? ??????????????? ??? ??????:
? ?????? ?????????? ?????????? ???? ??????? ???? DocIcon. ??? ????, ????? ????? ??????????? ??? ???????????? ?? XSL, ??? ?????????? ????????? ? ????? ??? ????? ? ???????? CommonViewFields:
<property name="CommonViewFields" type="string">DocIcon, Lookup;</property>
XSL ??????, ???????????? ???????? ? ??? ??????? ???????? ????.:
<xsl:stylesheet
version="1.0"
xmlns:xsl="https://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:ext="ext"
exclude-result-prefixes="msxsl ext">
<xsl:template name="DocLib" match="Row[@Style='DocLib']" mode="itemstyle">
<p>
<xsl:variable name="SafeLinkUrl">
<xsl:call-template name="OuterTemplate.GetSafeLink">
<xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="DisplayTitle">
<xsl:call-template name="OuterTemplate.GetTitle">
<xsl:with-param name="Title" select="@Title"/>
<xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="LinkTarget">
<xsl:if test="@OpenInNewWindow = 'True'" >_blank</xsl:if>
</xsl:variable>
<div >
<xsl:choose>
<xsl:when test="@DocIcon=''">
<img src="_layouts/images/folder.gif" alt="" />
</xsl:when>
<xsl:otherwise>
<img src="_layouts/images/ic{@DocIcon}.gif" alt="" />
</xsl:otherwise>
</xsl:choose>
<xsl:call-template name="OuterTemplate.CallPresenceStatusIconTemplate"/>
<a href="{$SafeLinkUrl}" target="{$LinkTarget}" title="{@LinkToolTip}" style="padding-left:5px;">
<xsl:value-of select="$DisplayTitle"/>
</a>
</div>
</p>
</xsl:template>
</xsl:stylesheet>
???? ?? ??????, ????? SP "???????" ?????? ??? ??????????? ??????????:
1) ?????????? ???? docicon.xml. ?? ????????? ? ????? Drive:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\XML
2) ???????????? ? ??? ??? ????? ? ???????? ????????. ???????? ????????? ?????????? ? Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\Images
Comments
Anonymous
January 01, 2003
Возможно ошибка живет тут src="/_layouts/images/ic{@DocIcon}.gif То есть перед _layouts нужен "/". Еще один возможный вариант что та картинка которая вам нужна не называется ic<что-то там> Вообщем так, посмотрите что у вас возвращается в свойстве @DocIcon. Для этого просто выведите значение куда-нибудь на экран.Anonymous
April 16, 2009
Доброе время суток, можно как-то поподробнее объяснить как сделать так , что бы отображались иконки у документов (сейчас не отображаеться)Anonymous
May 18, 2009
Отличная статья, кстати автору хочу предложить установить от яндекс.денег полезную фишку на сайт "Дай рубль". Я бы дал, так сказать на поддержание. ;)