посмотрите файл xsltTpls/library/thumbnails.xsl шаблон <xsl:template name="catalog-thumbnail">
конструкция которая выводит картинку или надпись "нету"
<xsl:with-param name="src">
<xsl:choose>
<xsl:when test="$property/value">
<xsl:value-of select="$property/value" />
</xsl:when>
<xsl:otherwise>&empty-photo;</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
в секции <xsl:otherwise>&empty-photo;</xsl:otherwise> пропишите адресс к своему изображению
Вот /xsltTpls/modules/news.xsl:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:umi="http://www.umi-cms.ru/TR/umi"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="result[@module = 'news' and @method = 'item']">
<xsl:value-of select="page//property[@name = 'content']/value" disable-output-escaping="yes" />
</xsl:template>
<xsl:template match="result[@module = 'news' and @method = 'rubric']">
<xsl:apply-templates select="document('udata://news/lastlist')/udata" />
</xsl:template>
<xsl:template match="udata[@module = 'news' and @method = 'lastlist']">
<xsl:apply-templates select="items">
<xsl:with-param name="list-class">
<xsl:text>news-lastlist</xsl:text>
</xsl:with-param>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="udata[@method = 'lastlist']//item">
<xsl:param name="item-info" select="document(concat('upage://', @id))" />
<xsl:variable name="date" select="document(concat('udata://system/convertDate/', @publish_time, '/(d-m-Y)'))/udata" />
<li>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:value-of select="." />
</a>
<xsl:text> (</xsl:text>
<span umi:element-id="{@id}" umi:field-name="publish_time" umi:format="d-m-Y">
<xsl:value-of select="$date" />
</span>
<xsl:text>)</xsl:text>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates></a>
<xsl:value-of select="$item-info//property[@name = 'anons']/value" disable-output-escaping="yes" />
</li>
</xsl:template>
<!-- short_list -->
<xsl:template match="udata[@module = 'news' and @method = 'lastlist']" mode="short_list">
<xsl:apply-templates select="items" mode="short_list">
<xsl:with-param name="list-class">
<xsl:text>news-lastlist</xsl:text>
</xsl:with-param>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="udata[@method = 'lastlist']//item" mode="short_list">
<xsl:param name="item-info" select="document(concat('upage://', @id))" />
<xsl:variable name="date" select="document(concat('udata://system/convertDate/', @publish_time, '/(d-m-Y)'))/udata" />
<li>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:value-of select="." />
</a>
<xsl:text> (</xsl:text>
<span umi:element-id="{@id}" umi:field-name="publish_time" umi:format="d-m-Y">
<xsl:value-of select="$date" />
</span>
<xsl:text>)</xsl:text>
<!--<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>-->
</li>
</xsl:template>
<!-- short_list -->
<xsl:template match="property[@name = 'anons_pic']">
<xsl:param name="page-id" />
<img align="right" src="/images/autothumbs{value/@folder}/{value/@name}_50_.{value/@ext}"
umi:element-id="{$page-id}"
umi:field-name="{@name}"
/>
</xsl:template>
<xsl:template match="udata[@module = 'system' and @method = 'makeThumbnail']">
<xsl:param name="page-id" />
<xsl:param name="object-id" />
<xsl:param name="field-name" />
<img src="{src}" umi:element-id="{$page-id}" umi:object-id="{$object-id}" umi:field-name="{$field-name}" />
</xsl:template>
</xsl:stylesheet>
правим шаблон <xsl:template match="property[@name = 'anons_pic']">
<xsl:choose>
<xsl:when test="{value/@name}">
//если присутствует название картинки выводим картинку
<img align="right" src="/images/autothumbs{value/@folder}/{value/@name}_50_.{value/@ext}"
umi:element-id="{$page-id}"
umi:field-name="{@name}"
/>
</xsl:when>
<xsl:otherwise>
//иначе выводим свою картинку
//проверяем размер создаваемых превьющек, и делаем тако го же размера заглушку
//либо продублировать в теге img высоту и ширину
<img align="right" src="выводим_путь_к_своей_картинке.жипег"/>
</xsl:otherwise>
</xsl:choose>
Что-то не работает. Шаблон <xsl:template match="property[@name = 'anons_pic']"> исправил на такой:
<xsl:template match="property[@name = 'anons_pic']">
<xsl:param name="page-id" />
<xsl:choose>
<xsl:when test="{value/@name}">
<img align="right" src="/images/autothumbs{value/@folder}/{value/@name}_50_.{value/@ext}"
umi:element-id="{$page-id}"
umi:field-name="{@name}"
/>
</xsl:when>
<xsl:otherwise>
<img align="right" src="111.jpg"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
возможно причина ошибки состоит при вызове шаблона
<!--<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>-->
исправить
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>
и еще, заглушка 111.jpg в какой папке находится?
Вот исправленный код:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:umi="http://www.umi-cms.ru/TR/umi"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="result[@module = 'news' and @method = 'item']">
<xsl:value-of select="page//property[@name = 'content']/value" disable-output-escaping="yes" />
</xsl:template>
<xsl:template match="result[@module = 'news' and @method = 'rubric']">
<xsl:apply-templates select="document('udata://news/lastlist')/udata" />
</xsl:template>
<xsl:template match="udata[@module = 'news' and @method = 'lastlist']">
<xsl:apply-templates select="items">
<xsl:with-param name="list-class">
<xsl:text>news-lastlist</xsl:text>
</xsl:with-param>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="udata[@method = 'lastlist']//item">
<xsl:param name="item-info" select="document(concat('upage://', @id))" />
<xsl:variable name="date" select="document(concat('udata://system/convertDate/', @publish_time, '/(d-m-Y)'))/udata" />
<li>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:value-of select="." />
</a>
<xsl:text> (</xsl:text>
<span umi:element-id="{@id}" umi:field-name="publish_time" umi:format="d-m-Y">
<xsl:value-of select="$date" />
</span>
<xsl:text>)</xsl:text>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates></a>
<xsl:value-of select="$item-info//property[@name = 'anons']/value" disable-output-escaping="yes" />
</li>
</xsl:template>
<!-- short_list -->
<xsl:template match="udata[@module = 'news' and @method = 'lastlist']" mode="short_list">
<xsl:apply-templates select="items" mode="short_list">
<xsl:with-param name="list-class">
<xsl:text>news-lastlist</xsl:text>
</xsl:with-param>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="udata[@method = 'lastlist']//item" mode="short_list">
<xsl:param name="item-info" select="document(concat('upage://', @id))" />
<xsl:variable name="date" select="document(concat('udata://system/convertDate/', @publish_time, '/(d-m-Y)'))/udata" />
<li>
<a href="{@link}" umi:element-id="{@id}" umi:field-name="name">
<xsl:value-of select="." />
</a>
<xsl:text> (</xsl:text>
<span umi:element-id="{@id}" umi:field-name="publish_time" umi:format="d-m-Y">
<xsl:value-of select="$date" />
</span>
<xsl:text>)</xsl:text>
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>
</li>
</xsl:template>
<!-- short_list -->
<xsl:template match="property[@name = 'anons_pic']">
<xsl:param name="page-id" />
<xsl:choose>
<xsl:when test="{value/@name}">
<img align="right" src="/images/autothumbs{value/@folder}/{value/@name}_50_.{value/@ext}"
umi:element-id="{$page-id}"
umi:field-name="{@name}"
/>
</xsl:when>
<xsl:otherwise>
<img align="right" src="/images/cms/design/video-blok.jpg"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="udata[@module = 'system' and @method = 'makeThumbnail']">
<xsl:param name="page-id" />
<xsl:param name="object-id" />
<xsl:param name="field-name" />
<img src="{src}" umi:element-id="{$page-id}" umi:object-id="{$object-id}" umi:field-name="{$field-name}" />
</xsl:template>
</xsl:stylesheet>
После этого сайт перестает работать.
у вас там смутно в месте где идет вызов
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))/udata">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>
и где идет шаблон для этих узлов
<xsl:template match="property[@name = 'anons_pic']">...
я бы написал точнее,
<xsl:apply-templates select="document(concat('upage://', @id, '.anons_pic'))//property ">
<xsl:with-param name="page-id" select="@id" />
</xsl:apply-templates>
так как в вызове возвращается udata узел со всем содержимым, а в шаблоне для вызова в match стоит уже property.
наверняка, проблема в какой-то мелочи...
Вот пример кода для вывода картинки anons_pic
<xsl:template match="udata[@module = 'news' and @method = 'lastlist']" mode="short_list">
<xsl:apply-templates select="items/item" mode="short_list" />
</xsl:template>
<xsl:template match="item" mode="short_list">
<xsl:variable name="item-info" select="document(@xlink:href)" />
<div class="news_yslygi_item" umi:element-id="{@id}" umi:region="row">
<div >
<a href="{@link}" umi:field-name="name" umi:empty="пусто">
<xsl:value-of select="." />
</a>
</div>
<div>
<a href="{@link}" umi:field-name="anons_pic" umi:empty="картинка">
<xsl:choose>
<xsl:when test="$item-info//property[@name='anons_pic']/value">
<xsl:variable name="src" select="$item-info//property[@name='anons_pic']/value" />
<xsl:variable name="img_width" select="310" />
<xsl:variable name="img_height" select="auto" />
<xsl:variable name="thumb" select="document(concat('udata://system/makeThumbnail/(.',$src,')/',$img_width,'/',$img_height))/udata/src" />
<img src="{$thumb}"/>
</xsl:when>
<xsl:otherwise>нет картинки</xsl:otherwise>
</xsl:choose>
</a>
</div>
</div>
</xsl:template>