Прикрутим lightbox к магазину?
весь процесс подключения highslide заключается в прописывании
+ закачать - подключить скрипты
может во втором проблема?) можно установить firebug например, для firefox, посмотреть ошибки
class="highslide" onclick="return hs.expand(this)"
ссылкам+ закачать - подключить скрипты
может во втором проблема?) можно установить firebug например, для firefox, посмотреть ошибки
прикол в том что я вставляю код приведенный выше и вместо галереи у меня появляется ошибка
Укого сделанно уже это скиньте пожалуйста xsl шаблон для галереи в текстовике на мыльце eboregfjva@znvy.eh буду очень признателен
так может текст ошибки напишете?
чем поможет xsl другого сайта? другие классы, другое оформление и тд и тп
на стандартном xsl это делается так:
чем поможет xsl другого сайта? другие классы, другое оформление и тд и тп
на стандартном xsl это делается так:
<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
<xsl:template match="/">
<xsl:apply-templates select="/document"/>
</xsl:template>
<xsl:template match="/document">
<!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
<xsl:variable name="parent_group_id" select="blocks/parent_group_id"/>
<!-- Если в находимся корне - выводим название информационной системы -->
<xsl:if test="blocks/parent_group_id = 0">
<h1>
<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>
</h1>
<!-- Описание выводится при отсутствии фильтрации по тэгам -->
<xsl:if test="count(blocks/tags/tag) = 0">
<xsl:value-of disable-output-escaping="yes" select="blocks/description"/>
</xsl:if>
</xsl:if>
<!-- Если в находимся в группе - выводим название группы -->
<xsl:if test="blocks/parent_group_id != 0">
<h1>
<xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/name"/>
</h1>
<!-- Описание выводим только на первой странице -->
<xsl:if test="blocks/items/current_page = 0">
<xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/description"/>
</xsl:if>
<!-- Путь к группе -->
<!--
<p>
<xsl:apply-templates select=".//group[@id=$parent_group_id]" mode="goup_path"/>
</p>
-->
</xsl:if>
<!-- Обработка выбранных тэгов -->
<xsl:if test="count(blocks/selected_tags/tag) = 1">
<h2>Метка — <strong><xsl:value-of select="blocks/selected_tags/tag/tag_name"/></strong>.</h2>
</xsl:if>
<!-- Отображение подгрупп данной группы, только если подгруппы есть и не идет фильтра по меткам -->
<xsl:if test="count(blocks/selected_tags/tag) = 0 and count(.//group[@parent_id=$parent_group_id]) > 0">
<xsl:apply-templates select=".//group[@parent_id=$parent_group_id]" mode="groups"/>
</xsl:if>
<xsl:if test="count(//blocks/items/item[item_status=1]) > 0">
<!-- Число элементов в строку -->
<xsl:variable name="items_in_line" select="4"/>
<xsl:call-template name="items">
<xsl:with-param name="items_in_line" select="$items_in_line"/>
<xsl:with-param name="current_position" select="0"/>
</xsl:call-template>
</xsl:if>
<!-- Строка ссылок на другие страницы информационной системы -->
<xsl:if test="ОтображатьСсылкиНаСледующиеСтраницы=1">
<p>
<!-- Ссылка, для которой дописываются суффиксы page-XX/ -->
<xsl:variable name="link">
<xsl:value-of select="/document/blocks/url"/>
<xsl:if test="$parent_group_id != 0">
<xsl:value-of select="/document/blocks//group[@id = $parent_group_id]/fullpath"/>
</xsl:if>
</xsl:variable>
<xsl:call-template name="for">
<xsl:with-param name="link" select="$link"/>
<xsl:with-param name="items_on_page" select="blocks/items/items_on_page"/>
<xsl:with-param name="current_page" select="blocks/items/current_page"/>
<xsl:with-param name="count_items" select="blocks/items/count_items"/>
<xsl:with-param name="visible_pages">5</xsl:with-param>
</xsl:call-template>
</p>
</xsl:if>
<div style="clear: both"></div>
<!-- Rss -->
<!--<div class="rss_4_ie"></div>
<a href="{blocks/url}rss/">
<img src="/images/rss/rss_2.0.png" style="filter: alpha(opacity=0); margin: 0px 0px -4px 0px"/>
</a>
<a href="{blocks/url}rss/">RSS</a>-->
<xsl:if test="ОтображатьСсылкуНаАрхив=1">
<div class="archives_4_ie"></div>
<a href="{blocks/url}">
<img src="/images/archives.png" style="filter: alpha(opacity=0); margin: 0px 0px -4px 0px"/>
</a>
<a href="{blocks/url}">Архив "<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>"</a>
</xsl:if>
</xsl:template>
<!-- Шаблон выводит рекурсивно ссылки на группы инф. элемента -->
<xsl:template match="group" mode="goup_path">
<xsl:variable name="parent_id" select="@parent_id"/>
<xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/>
<xsl:if test="@parent_id=0">
<a href="{/document/blocks/url}">
<xsl:value-of disable-output-escaping="yes" select="/document/blocks/name"/>
</a>
</xsl:if>
<span class="path_arrow">→</span>
<a href="{/document/blocks/url}{fullpath}">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</xsl:template>
<!-- Шаблон выводит ссылки подгруппы информационного элемента -->
<xsl:template match="group" mode="groups">
<div class="group_gallery">
<div class="t"></div>
<div class="r"></div>
<div class="b"></div>
<div class="l"></div>
<xsl:if test="small_image!=''">
<a href="{/document/blocks/url}{fullpath}">
<img src="{small_image}"/>
<br/>
</a> </xsl:if>
<a href="{/document/blocks/url}{fullpath}">
<b>
<xsl:value-of disable-output-escaping="yes" select="name"/>
</b>
</a> <span style="color: #b7af9c">(<xsl:value-of select="count_all_items"/>)</span><xsl:value-of disable-output-escaping="yes" select="description"/></div>
<xsl:if test="position() mod 3 = 0">
<div style="clear: left;"></div>
</xsl:if>
</xsl:template>
<xsl:template name="items">
<xsl:param name="items_in_line"/>
<xsl:param name="current_position"/>
<table border="0" cellspacing="0" cellpadding="0" style="margin-bottom: 10px;">
<tr style="background: url('/images/top_film_border.gif') repeat-x 0 100%;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 0px 0px 22px 5px;">
<!-- Название -->
<p class="news_title">
<a href="{item_path}">
<xsl:value-of disable-output-escaping="yes" select="item_name"/>
</a>
</p>
</td>
</xsl:if>
</xsl:for-each>
</tr>
<tr style="background-color: #eee;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 0px 5px 0px 5px;">
<xsl:if test="item_small_image!=''">
<!-- Проверяем задан ли путь к файлу большого изображения -->
<xsl:if test="item_image!=''">
<a href="{item_image}" target="_blank" class="highslide" onclick="return hs.expand(this)">
<img src="{item_small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</a>
</xsl:if>
<xsl:if test="item_image =''">
<img src="{item_small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</xsl:if>
</xsl:if>
</td>
</xsl:if>
</xsl:for-each>
</tr>
<tr style="background: url('/images/bottom_film_border.gif') repeat-x 0 0;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 25px 0px 0px 5px;">
<span class="date">
<xsl:value-of disable-output-escaping="yes" select="item_image/@width"/>×<xsl:value-of disable-output-escaping="yes" select="item_image/@height"/><br/></span>
<!-- Дата время -->
<span class="date">
<xsl:value-of disable-output-escaping="yes" select="item_datetime"/>
</span>
<xsl:if test="item_description != ''">
<br/>
<xsl:value-of disable-output-escaping="yes" select="item_description"/>
</xsl:if>
<xsl:if test="count(tags/tag) > 0">
<p class="tags">
<img src="/hostcmsfiles/images/tags.gif" align="left" style="margin: 0px 5px -2px 0px"/>
<xsl:apply-templates select="tags/tag"/>
</p>
</xsl:if>
<xsl:if test="count(site_user) > 0">
<p>
<img src="/hostcmsfiles/images/user.gif" style="margin: 0px 5px -4px 0px"/>
<strong>
<a href="/users/info/{site_user/site_user_login}/" class="c_u_l">
<xsl:value-of select="site_user/site_user_login"/>
</a>
</strong>
<xsl:if test="count(item_comments/comment) > 0">,
<img src="/hostcmsfiles/images/comments.gif" style="margin: 0px 5px -4px 0px"/>
<a href="{item_path}#comments">
<xsl:value-of select="count(item_comments//comment)"/> <xsl:call-template name="declension">
<xsl:with-param name="number" select="count(item_comments//comment)"/></xsl:call-template></a>
</xsl:if>
</p>
</xsl:if>
</td>
</xsl:if>
</xsl:for-each>
</tr>
</table>
<xsl:if test="count(//blocks/items/item[item_status=1]) > ($current_position + $items_in_line)">
<xsl:call-template name="items">
<xsl:with-param name="items_in_line" select="$items_in_line"/>
<xsl:with-param name="current_position" select="$current_position + $items_in_line"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<!-- /// Метки для информационного элемента /// -->
<xsl:template match="tags/tag">
<a href="{/document/blocks/url}tag/{tag_path_name}/" class="tag">
<xsl:value-of select="tag_name"/>
</a>
<xsl:if test="position() != last()">,</xsl:if> </xsl:template>
<!-- Цикл для вывода строк ссылок -->
<xsl:template name="for">
<xsl:param name="i" select="0"/>
<xsl:param name="prefix">page</xsl:param>
<xsl:param name="link"/>
<xsl:param name="items_on_page"/>
<xsl:param name="current_page"/>
<xsl:param name="count_items"/>
<xsl:param name="visible_pages"/>
<xsl:variable name="n" select="$count_items div $items_on_page"/>
<!-- Заносим в переменную $parent_group_id идентификатор текущей группы -->
<xsl:variable name="parent_group_id" select="/document/blocks/parent_group_id"/>
<!-- Считаем количество выводимых ссылок перед текущим элементом -->
<xsl:variable name="pre_count_page">
<xsl:choose>
<xsl:when test="$current_page > ($n - (round($visible_pages div 2) - 1))">
<xsl:value-of select="$visible_pages - ($n - $current_page)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="round($visible_pages div 2) - 1"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Считаем количество выводимых ссылок после текущего элемента -->
<xsl:variable name="post_count_page">
<xsl:choose>
<xsl:when test="0 > $current_page - (round($visible_pages div 2) - 1)">
<xsl:value-of select="$visible_pages - $current_page - 1"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="round($visible_pages div 2) = ($visible_pages div 2)">
<xsl:value-of select="$visible_pages div 2"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="round($visible_pages div 2) - 1"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="$i = 0 and $current_page != 0">
<span class="ctrl">←
Ctrl</span>
</xsl:if>
<xsl:if test="$i >= $n and ($n - 1) > $current_page">
<span class="ctrl">Ctrl →</span>
</xsl:if>
<xsl:if test="$count_items > $items_on_page and $n > $i">
<!-- Определяем адрес тэга -->
<xsl:variable name="tag_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="count(/document/blocks/selected_tags/tag) != 0">tag/<xsl:value-of select="/document/blocks/selected_tags/tag/tag_path_name"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Определяем адрес ссылки -->
<xsl:variable name="number_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="$i != 0">
<xsl:value-of select="$prefix"/>-<xsl:value-of select="$i + 1"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Ставим ссылку на страницу-->
<xsl:if test="$i != $current_page">
<!-- Выводим ссылку на первую страницу -->
<xsl:if test="$current_page - $pre_count_page > 0 and $i = 0">
<a href="{$link}" class="page_link" style="text-decoration: none;">←</a>
</xsl:if>
<xsl:choose>
<xsl:when test="$i >= ($current_page - $pre_count_page) and ($current_page + $post_count_page) >= $i">
<!-- Выводим ссылки на видимые страницы -->
<a href="{$link}{$tag_link}{$number_link}" class="page_link">
<xsl:value-of select="$i + 1"/>
</a>
</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
<!-- Выводим ссылку на последнюю страницу -->
<xsl:if test="$i+1 >= $n and $n > ($current_page + 1 + $post_count_page)">
<xsl:choose>
<xsl:when test="$n > round($n)">
<!-- Выводим ссылку на последнюю страницу -->
<a href="{$link}{$prefix}-{round($n+1)}/" class="page_link" style="text-decoration: none;">→</a>
</xsl:when>
<xsl:otherwise>
<a href="{$link}{$prefix}-{round($n)}/" class="page_link" style="text-decoration: none;">→</a>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:if>
<!-- Ссылка на предыдущую страницу для Ctrl + влево -->
<xsl:if test="$current_page != 0 and $i = $current_page">
<xsl:variable name="prev_number_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="($current_page - 1) != 0">page-<xsl:value-of select="$i"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<a href="{$link}{$tag_link}{$prev_number_link}" id="id_prev"></a>
</xsl:if>
<!-- Ссылка на следующую страницу для Ctrl + вправо -->
<xsl:if test="($n - 1) > $current_page and $i = $current_page">
<a href="{$link}{$tag_link}page-{$current_page+2}/" id="id_next"></a>
</xsl:if>
<!-- Не ставим ссылку на страницу-->
<xsl:if test="$i = $current_page">
<span class="current">
<xsl:value-of select="$i+1"/>
</span>
</xsl:if>
<!-- Рекурсивный вызов шаблона. НЕОБХОДИМО ПЕРЕДАВАТЬ ВСЕ НЕОБХОДИМЫЕ ПАРАМЕТРЫ! -->
<xsl:call-template name="for">
<xsl:with-param name="i" select="$i + 1"/>
<xsl:with-param name="prefix" select="$prefix"/>
<xsl:with-param name="link" select="$link"/>
<xsl:with-param name="items_on_page" select="$items_on_page"/>
<xsl:with-param name="current_page" select="$current_page"/>
<xsl:with-param name="count_items" select="$count_items"/>
<xsl:with-param name="visible_pages" select="$visible_pages"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<!-- Склонение после числительных -->
<xsl:template name="declension">
<xsl:param name="number" select="number"/>
<!-- Именительный падеж -->
<xsl:variable name="nominative">
<xsl:text>комментарий</xsl:text>
</xsl:variable>
<!-- Родительный падеж, единственное число -->
<xsl:variable name="genitive_singular">
<xsl:text>комментария</xsl:text>
</xsl:variable>
<xsl:variable name="genitive_plural">
<xsl:text>комментариев</xsl:text>
</xsl:variable>
<xsl:variable name="last_digit">
<xsl:value-of select="$number mod 10"/>
</xsl:variable>
<xsl:variable name="last_two_digits">
<xsl:value-of select="$number mod 100"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$last_digit = 1 and $last_two_digits != 11">
<xsl:value-of select="$nominative"/>
</xsl:when>
<xsl:when test="$last_digit = 2 and $last_two_digits != 12 or $last_digit = 3 and $last_two_digits != 13 or $last_digit = 4 and $last_two_digits != 14">
<xsl:value-of select="$genitive_singular"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$genitive_plural"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
<xsl:template match="/">
<xsl:apply-templates select="/document"/>
</xsl:template>
<xsl:template match="/document">
<!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
<xsl:variable name="parent_group_id" select="blocks/parent_group_id"/>
<!-- Если в находимся корне - выводим название информационной системы -->
<xsl:if test="blocks/parent_group_id = 0">
<h1>
<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>
</h1>
<!-- Описание выводится при отсутствии фильтрации по тэгам -->
<xsl:if test="count(blocks/tags/tag) = 0">
<xsl:value-of disable-output-escaping="yes" select="blocks/description"/>
</xsl:if>
</xsl:if>
<!-- Если в находимся в группе - выводим название группы -->
<xsl:if test="blocks/parent_group_id != 0">
<h1>
<xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/name"/>
</h1>
<!-- Описание выводим только на первой странице -->
<xsl:if test="blocks/items/current_page = 0">
<xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/description"/>
</xsl:if>
<!-- Путь к группе -->
<!--
<p>
<xsl:apply-templates select=".//group[@id=$parent_group_id]" mode="goup_path"/>
</p>
-->
</xsl:if>
<!-- Обработка выбранных тэгов -->
<xsl:if test="count(blocks/selected_tags/tag) = 1">
<h2>Метка — <strong><xsl:value-of select="blocks/selected_tags/tag/tag_name"/></strong>.</h2>
</xsl:if>
<!-- Отображение подгрупп данной группы, только если подгруппы есть и не идет фильтра по меткам -->
<xsl:if test="count(blocks/selected_tags/tag) = 0 and count(.//group[@parent_id=$parent_group_id]) > 0">
<xsl:apply-templates select=".//group[@parent_id=$parent_group_id]" mode="groups"/>
</xsl:if>
<xsl:if test="count(//blocks/items/item[item_status=1]) > 0">
<!-- Число элементов в строку -->
<xsl:variable name="items_in_line" select="4"/>
<xsl:call-template name="items">
<xsl:with-param name="items_in_line" select="$items_in_line"/>
<xsl:with-param name="current_position" select="0"/>
</xsl:call-template>
</xsl:if>
<!-- Строка ссылок на другие страницы информационной системы -->
<xsl:if test="ОтображатьСсылкиНаСледующиеСтраницы=1">
<p>
<!-- Ссылка, для которой дописываются суффиксы page-XX/ -->
<xsl:variable name="link">
<xsl:value-of select="/document/blocks/url"/>
<xsl:if test="$parent_group_id != 0">
<xsl:value-of select="/document/blocks//group[@id = $parent_group_id]/fullpath"/>
</xsl:if>
</xsl:variable>
<xsl:call-template name="for">
<xsl:with-param name="link" select="$link"/>
<xsl:with-param name="items_on_page" select="blocks/items/items_on_page"/>
<xsl:with-param name="current_page" select="blocks/items/current_page"/>
<xsl:with-param name="count_items" select="blocks/items/count_items"/>
<xsl:with-param name="visible_pages">5</xsl:with-param>
</xsl:call-template>
</p>
</xsl:if>
<div style="clear: both"></div>
<!-- Rss -->
<!--<div class="rss_4_ie"></div>
<a href="{blocks/url}rss/">
<img src="/images/rss/rss_2.0.png" style="filter: alpha(opacity=0); margin: 0px 0px -4px 0px"/>
</a>
<a href="{blocks/url}rss/">RSS</a>-->
<xsl:if test="ОтображатьСсылкуНаАрхив=1">
<div class="archives_4_ie"></div>
<a href="{blocks/url}">
<img src="/images/archives.png" style="filter: alpha(opacity=0); margin: 0px 0px -4px 0px"/>
</a>
<a href="{blocks/url}">Архив "<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>"</a>
</xsl:if>
</xsl:template>
<!-- Шаблон выводит рекурсивно ссылки на группы инф. элемента -->
<xsl:template match="group" mode="goup_path">
<xsl:variable name="parent_id" select="@parent_id"/>
<xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/>
<xsl:if test="@parent_id=0">
<a href="{/document/blocks/url}">
<xsl:value-of disable-output-escaping="yes" select="/document/blocks/name"/>
</a>
</xsl:if>
<span class="path_arrow">→</span>
<a href="{/document/blocks/url}{fullpath}">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</xsl:template>
<!-- Шаблон выводит ссылки подгруппы информационного элемента -->
<xsl:template match="group" mode="groups">
<div class="group_gallery">
<div class="t"></div>
<div class="r"></div>
<div class="b"></div>
<div class="l"></div>
<xsl:if test="small_image!=''">
<a href="{/document/blocks/url}{fullpath}">
<img src="{small_image}"/>
<br/>
</a> </xsl:if>
<a href="{/document/blocks/url}{fullpath}">
<b>
<xsl:value-of disable-output-escaping="yes" select="name"/>
</b>
</a> <span style="color: #b7af9c">(<xsl:value-of select="count_all_items"/>)</span><xsl:value-of disable-output-escaping="yes" select="description"/></div>
<xsl:if test="position() mod 3 = 0">
<div style="clear: left;"></div>
</xsl:if>
</xsl:template>
<xsl:template name="items">
<xsl:param name="items_in_line"/>
<xsl:param name="current_position"/>
<table border="0" cellspacing="0" cellpadding="0" style="margin-bottom: 10px;">
<tr style="background: url('/images/top_film_border.gif') repeat-x 0 100%;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 0px 0px 22px 5px;">
<!-- Название -->
<p class="news_title">
<a href="{item_path}">
<xsl:value-of disable-output-escaping="yes" select="item_name"/>
</a>
</p>
</td>
</xsl:if>
</xsl:for-each>
</tr>
<tr style="background-color: #eee;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 0px 5px 0px 5px;">
<xsl:if test="item_small_image!=''">
<!-- Проверяем задан ли путь к файлу большого изображения -->
<xsl:if test="item_image!=''">
<a href="{item_image}" target="_blank" class="highslide" onclick="return hs.expand(this)">
<img src="{item_small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</a>
</xsl:if>
<xsl:if test="item_image =''">
<img src="{item_small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</xsl:if>
</xsl:if>
</td>
</xsl:if>
</xsl:for-each>
</tr>
<tr style="background: url('/images/bottom_film_border.gif') repeat-x 0 0;">
<xsl:for-each select="//blocks/items/item[item_status=1]">
<xsl:if test="position() > $current_position and ($current_position + $items_in_line) >= position()">
<td style="padding: 25px 0px 0px 5px;">
<span class="date">
<xsl:value-of disable-output-escaping="yes" select="item_image/@width"/>×<xsl:value-of disable-output-escaping="yes" select="item_image/@height"/><br/></span>
<!-- Дата время -->
<span class="date">
<xsl:value-of disable-output-escaping="yes" select="item_datetime"/>
</span>
<xsl:if test="item_description != ''">
<br/>
<xsl:value-of disable-output-escaping="yes" select="item_description"/>
</xsl:if>
<xsl:if test="count(tags/tag) > 0">
<p class="tags">
<img src="/hostcmsfiles/images/tags.gif" align="left" style="margin: 0px 5px -2px 0px"/>
<xsl:apply-templates select="tags/tag"/>
</p>
</xsl:if>
<xsl:if test="count(site_user) > 0">
<p>
<img src="/hostcmsfiles/images/user.gif" style="margin: 0px 5px -4px 0px"/>
<strong>
<a href="/users/info/{site_user/site_user_login}/" class="c_u_l">
<xsl:value-of select="site_user/site_user_login"/>
</a>
</strong>
<xsl:if test="count(item_comments/comment) > 0">,
<img src="/hostcmsfiles/images/comments.gif" style="margin: 0px 5px -4px 0px"/>
<a href="{item_path}#comments">
<xsl:value-of select="count(item_comments//comment)"/> <xsl:call-template name="declension">
<xsl:with-param name="number" select="count(item_comments//comment)"/></xsl:call-template></a>
</xsl:if>
</p>
</xsl:if>
</td>
</xsl:if>
</xsl:for-each>
</tr>
</table>
<xsl:if test="count(//blocks/items/item[item_status=1]) > ($current_position + $items_in_line)">
<xsl:call-template name="items">
<xsl:with-param name="items_in_line" select="$items_in_line"/>
<xsl:with-param name="current_position" select="$current_position + $items_in_line"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<!-- /// Метки для информационного элемента /// -->
<xsl:template match="tags/tag">
<a href="{/document/blocks/url}tag/{tag_path_name}/" class="tag">
<xsl:value-of select="tag_name"/>
</a>
<xsl:if test="position() != last()">,</xsl:if> </xsl:template>
<!-- Цикл для вывода строк ссылок -->
<xsl:template name="for">
<xsl:param name="i" select="0"/>
<xsl:param name="prefix">page</xsl:param>
<xsl:param name="link"/>
<xsl:param name="items_on_page"/>
<xsl:param name="current_page"/>
<xsl:param name="count_items"/>
<xsl:param name="visible_pages"/>
<xsl:variable name="n" select="$count_items div $items_on_page"/>
<!-- Заносим в переменную $parent_group_id идентификатор текущей группы -->
<xsl:variable name="parent_group_id" select="/document/blocks/parent_group_id"/>
<!-- Считаем количество выводимых ссылок перед текущим элементом -->
<xsl:variable name="pre_count_page">
<xsl:choose>
<xsl:when test="$current_page > ($n - (round($visible_pages div 2) - 1))">
<xsl:value-of select="$visible_pages - ($n - $current_page)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="round($visible_pages div 2) - 1"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Считаем количество выводимых ссылок после текущего элемента -->
<xsl:variable name="post_count_page">
<xsl:choose>
<xsl:when test="0 > $current_page - (round($visible_pages div 2) - 1)">
<xsl:value-of select="$visible_pages - $current_page - 1"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="round($visible_pages div 2) = ($visible_pages div 2)">
<xsl:value-of select="$visible_pages div 2"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="round($visible_pages div 2) - 1"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="$i = 0 and $current_page != 0">
<span class="ctrl">←
Ctrl</span>
</xsl:if>
<xsl:if test="$i >= $n and ($n - 1) > $current_page">
<span class="ctrl">Ctrl →</span>
</xsl:if>
<xsl:if test="$count_items > $items_on_page and $n > $i">
<!-- Определяем адрес тэга -->
<xsl:variable name="tag_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="count(/document/blocks/selected_tags/tag) != 0">tag/<xsl:value-of select="/document/blocks/selected_tags/tag/tag_path_name"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Определяем адрес ссылки -->
<xsl:variable name="number_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="$i != 0">
<xsl:value-of select="$prefix"/>-<xsl:value-of select="$i + 1"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Ставим ссылку на страницу-->
<xsl:if test="$i != $current_page">
<!-- Выводим ссылку на первую страницу -->
<xsl:if test="$current_page - $pre_count_page > 0 and $i = 0">
<a href="{$link}" class="page_link" style="text-decoration: none;">←</a>
</xsl:if>
<xsl:choose>
<xsl:when test="$i >= ($current_page - $pre_count_page) and ($current_page + $post_count_page) >= $i">
<!-- Выводим ссылки на видимые страницы -->
<a href="{$link}{$tag_link}{$number_link}" class="page_link">
<xsl:value-of select="$i + 1"/>
</a>
</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
<!-- Выводим ссылку на последнюю страницу -->
<xsl:if test="$i+1 >= $n and $n > ($current_page + 1 + $post_count_page)">
<xsl:choose>
<xsl:when test="$n > round($n)">
<!-- Выводим ссылку на последнюю страницу -->
<a href="{$link}{$prefix}-{round($n+1)}/" class="page_link" style="text-decoration: none;">→</a>
</xsl:when>
<xsl:otherwise>
<a href="{$link}{$prefix}-{round($n)}/" class="page_link" style="text-decoration: none;">→</a>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:if>
<!-- Ссылка на предыдущую страницу для Ctrl + влево -->
<xsl:if test="$current_page != 0 and $i = $current_page">
<xsl:variable name="prev_number_link">
<xsl:choose>
<!-- Если не нулевой уровень -->
<xsl:when test="($current_page - 1) != 0">page-<xsl:value-of select="$i"/>/</xsl:when>
<!-- Иначе если нулевой уровень - просто ссылка на страницу со списком элементов -->
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<a href="{$link}{$tag_link}{$prev_number_link}" id="id_prev"></a>
</xsl:if>
<!-- Ссылка на следующую страницу для Ctrl + вправо -->
<xsl:if test="($n - 1) > $current_page and $i = $current_page">
<a href="{$link}{$tag_link}page-{$current_page+2}/" id="id_next"></a>
</xsl:if>
<!-- Не ставим ссылку на страницу-->
<xsl:if test="$i = $current_page">
<span class="current">
<xsl:value-of select="$i+1"/>
</span>
</xsl:if>
<!-- Рекурсивный вызов шаблона. НЕОБХОДИМО ПЕРЕДАВАТЬ ВСЕ НЕОБХОДИМЫЕ ПАРАМЕТРЫ! -->
<xsl:call-template name="for">
<xsl:with-param name="i" select="$i + 1"/>
<xsl:with-param name="prefix" select="$prefix"/>
<xsl:with-param name="link" select="$link"/>
<xsl:with-param name="items_on_page" select="$items_on_page"/>
<xsl:with-param name="current_page" select="$current_page"/>
<xsl:with-param name="count_items" select="$count_items"/>
<xsl:with-param name="visible_pages" select="$visible_pages"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<!-- Склонение после числительных -->
<xsl:template name="declension">
<xsl:param name="number" select="number"/>
<!-- Именительный падеж -->
<xsl:variable name="nominative">
<xsl:text>комментарий</xsl:text>
</xsl:variable>
<!-- Родительный падеж, единственное число -->
<xsl:variable name="genitive_singular">
<xsl:text>комментария</xsl:text>
</xsl:variable>
<xsl:variable name="genitive_plural">
<xsl:text>комментариев</xsl:text>
</xsl:variable>
<xsl:variable name="last_digit">
<xsl:value-of select="$number mod 10"/>
</xsl:variable>
<xsl:variable name="last_two_digits">
<xsl:value-of select="$number mod 100"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$last_digit = 1 and $last_two_digits != 11">
<xsl:value-of select="$nominative"/>
</xsl:when>
<xsl:when test="$last_digit = 2 and $last_two_digits != 12 or $last_digit = 3 and $last_two_digits != 13 or $last_digit = 4 and $last_two_digits != 14">
<xsl:value-of select="$genitive_singular"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$genitive_plural"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
мдя народ. учите xslt, у большинства ошибки выскакивают именно из-за этого. по крайней мере в элементарных вещах надо разбираться. ИМХО хайслайд лучше чем задолбавший всех лайтбокс.
Делаем лучшее
Не могу найти решение отображения highslide IE8 не хочет отображать, хоть тресни. Какой час уже бьюсь сделать такой вывод в магазине.
Проверял только в IE8 и мозилле, в мозилле работает, в IE8 нет, магия в том, что на сайте автора если смотреть в том же IE8 все примеры открываются, у меня же на сайте нет. По сути скачал файлы, закачал в корень сайта. Между head после хостцмсовских скриптов прописал:
<script type="text/javascript" src="/highslide/highslide.js"></script>
<link rel="stylesheet" type="text/css" href="/highslide/highslide.css" />
<!--[if lt IE 7]>
<link rel="stylesheet" type="text/css" href="/highslide/highslide-ie6.css" />
<![endif]-->
<script type="text/javascript">
hs.graphicsDir = '/highslide/graphics/';
</script>
Потом пошел в xsl шаблон магазин товар, вставил
<!-- Изображение для товара, если есть -->
<xsl:if test="small_image != ''">
<a href="{image}" title="{name}" alt="{name}"
width="{image/@width}" height="{image/@height}" class="highslide" onclick="return hs.expand (this)" ><img src="{small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</a>
<br/>
<a href="{image}" class="highslide" onclick="return hs.expand (this)">
<img src="/hostcmsfiles/images/zoom.gif" alt="Увеличить" style="border: 0"/>
</a>
Помогите если кто знает в чем тут проблема. Спасибо
Проверял только в IE8 и мозилле, в мозилле работает, в IE8 нет, магия в том, что на сайте автора если смотреть в том же IE8 все примеры открываются, у меня же на сайте нет. По сути скачал файлы, закачал в корень сайта. Между head после хостцмсовских скриптов прописал:
<script type="text/javascript" src="/highslide/highslide.js"></script>
<link rel="stylesheet" type="text/css" href="/highslide/highslide.css" />
<!--[if lt IE 7]>
<link rel="stylesheet" type="text/css" href="/highslide/highslide-ie6.css" />
<![endif]-->
<script type="text/javascript">
hs.graphicsDir = '/highslide/graphics/';
</script>
Потом пошел в xsl шаблон магазин товар, вставил
<!-- Изображение для товара, если есть -->
<xsl:if test="small_image != ''">
<a href="{image}" title="{name}" alt="{name}"
width="{image/@width}" height="{image/@height}" class="highslide" onclick="return hs.expand (this)" ><img src="{small_image}" style="border: 1px solid #c6bea7; padding: 1px;"/>
</a>
<br/>
<a href="{image}" class="highslide" onclick="return hs.expand (this)">
<img src="/hostcmsfiles/images/zoom.gif" alt="Увеличить" style="border: 0"/>
</a>
Помогите если кто знает в чем тут проблема. Спасибо
Скорее всего дело в CSS файлах. В них тоже поправьте пути на абсолютные
background: url(/addons/highslide/graphics/fullexpand.gif) no-repeat;
Доброго дня форумчане.
пытаюсь настроить магазинчик свой, но не могу понять, как его прикрутить на сайт?
Я все прочел здесь что написано, только до сих пор не понимаю как это сделать.
Прикрутить хотел вот это не могли бы вы мне пожалуйста расскахать шаг за шагом и более подробно, если возможно и не трудно.
Спасибо
пытаюсь настроить магазинчик свой, но не могу понять, как его прикрутить на сайт?
Я все прочел здесь что написано, только до сих пор не понимаю как это сделать.
Прикрутить хотел вот это не могли бы вы мне пожалуйста расскахать шаг за шагом и более подробно, если возможно и не трудно.
Спасибо
sivruk,
Доброго дня форумчане.
пытаюсь настроить магазинчик свой, но не могу понять, как его прикрутить на сайт?
Я все прочел здесь что написано, только до сих пор не понимаю как это сделать.
Прикрутить хотел вот это не могли бы вы мне пожалуйста расскахать шаг за шагом и более подробно, если возможно и не трудно.
Спасибо
Доброго дня форумчане.
пытаюсь настроить магазинчик свой, но не могу понять, как его прикрутить на сайт?
Я все прочел здесь что написано, только до сих пор не понимаю как это сделать.
Прикрутить хотел вот это не могли бы вы мне пожалуйста расскахать шаг за шагом и более подробно, если возможно и не трудно.
Спасибо
Авторизация
