UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: webtrend от 31 Августа 2016, 18:58:39

Название: makeThumbnail фотографии с сзатием в 10%
Отправлено: webtrend от 31 Августа 2016, 18:58:39
Добрый день, при использовании
<xsl:call-template name="catalog-thumbnail">
<xsl:with-param name="element-id" select="@id" />
<xsl:with-param name="source" select="$main-photo/text()" />
<xsl:with-param name="empty">&empty-photo;</xsl:with-param>

</xsl:call-template>
Фотографии выводятся в не очень хорошем качестве, подскажите где что поменять чтобы фото сжимались максимум на 10%
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: aghigay от 31 Августа 2016, 22:19:22
<xsl:call-template name="catalog-thumbnail">
означает буквально "вызвать шаблон с названием catalog-thumbnail"

Сам по себе шаблон ничего не делает. Он не создает новое фото и не режет его. А вот функции, вызываемые внутри шаблона, как раз этим и занимаются.

Если вы хотите добавить параметр качества сжатия функции - ищите где находится этот шаблон и какие функции он задействует.
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: webtrend от 01 Сентября 2016, 11:23:03
Я так понимаю что параметры задаются в файле xslt\library\thumbnails.xsl
скорее всего в этом куске
<xsl:template name="thumbnail">
<xsl:param name="src" />
<xsl:param name="width">auto</xsl:param>
<xsl:param name="height">auto</xsl:param>
<xsl:param name="empty" />
<xsl:param name="align" />
<xsl:param name="item" />
<xsl:param name="quality" />

<xsl:param name="element-id" />
<xsl:param name="field-name" />

<xsl:apply-templates select="document(concat('udata://system/makeThumbnailFull/(.', $src, ')/', $width, '/', $height, '/void/0/1///100'))/udata">
<xsl:with-param name="element-id" select="$element-id" />
<xsl:with-param name="field-name" select="$field-name" />
<xsl:with-param name="empty" select="$empty" />
<xsl:with-param name="align" select="$align" />
<xsl:with-param name="item" select="$item" />
<xsl:with-param name="quality" select="$quality" />
</xsl:apply-templates>
</xsl:template>

Задаю параметр
<xsl:param name="quality" />
Чтобы потом его прописать как
<xsl:with-param name="quality">100</xsl:with-param>
Но что-то ничего не меняется(((
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: aghigay от 01 Сентября 2016, 11:50:04
Параметр задается в http://dev.docs.umi-cms.ru/spravochnik_makrosov_umicms/virtualnyj_modul_system/system_makethumbnailfull/

А используется ли параметр quality - это большой вопрос
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: webtrend от 01 Сентября 2016, 11:53:15
Так в этом же изначально и вопрос, как сделать так чтобы он использовался
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: aghigay от 01 Сентября 2016, 13:16:03
Прописать его в вызове document(concat('udata://system/makeThumbnailFull/
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: webtrend от 01 Сентября 2016, 14:01:41
Правильно ли я понимаю что в файл xslt\library\thumbnails.xsl
в секцию <xsl:template name="thumbnail">
дописываем следующее
<xsl:template name="thumbnail">
<xsl:param name="src" />
<xsl:param name="width">auto</xsl:param>
<xsl:param name="height">auto</xsl:param>
<xsl:param name="empty" />
<xsl:param name="align" />
<xsl:param name="item" />
<xsl:param name="quality">100</xsl:param>

<xsl:param name="element-id" />
<xsl:param name="field-name" />

<xsl:apply-templates select="document(concat('udata://system/makeThumbnailFull/(.', $src, ')/', $width, '/', $height, '/void/0/1///',  $quality))/udata">
<xsl:with-param name="element-id" select="$element-id" />
<xsl:with-param name="field-name" select="$field-name" />
<xsl:with-param name="empty" select="$empty" />
<xsl:with-param name="align" select="$align" />
<xsl:with-param name="item" select="$item" />
</xsl:apply-templates>
</xsl:template>
Название: Re: makeThumbnail фотографии с сзатием в 10%
Отправлено: webtrend от 01 Сентября 2016, 14:20:55
Все разобрался, спасибо за помощь )