в разные колонки в зависимости от доп свойства?

#
Re: в разные колонки в зависимости от доп свойства?
Здравствуйте. Не совсем разобрался в топике. Мне нужно вот что сделать...
В "информационных системах" создана "информационная группа", которая называется "все статьи". Внутри это группы добавлены дополнительные свойства элементов: "статьи право", "статьи центр" и "статьи лево", тип - "флажок". На морде сайта есть 3 блока div. Как и в каком XSL-шаблоне поправить код и что мне прописать в макете сайта?
т.е. я хочу чтобы в зависимости от того, какая галочка (право, центр или лево) стоит у информационного элемента, статья размещалась на морде в соответствующем столбце.
///
#
Re: в разные колонки в зависимости от доп свойства?
лично я использовала xsl шаблон СписокЗаписейГостевойКниги, (мне было так удобнее, потому что я использовала саму ИС гостевая книга)
приведу примеры некотрых частей получившегося шаблона, скрестив свое и ваше::
<!-- Отображение записи информационной системы -->
      <div id="sleva2">
         <span class="title">В этой колонки идут те элементы что будут слева</span>
         <xsl:apply-templates select="blocks/items/item[item_status=1]" mode="first"/>
      </div>
      <div id="sprava2">
         <span class="title">В этой колонки идут те элементы что будут справа</span>
         <xsl:apply-templates select="blocks/items/item[item_status=1]" mode="second"/>
      </div>
            


и вот

   <xsl:template match="blocks/items/item" mode="first">
      <xsl:if test="item_propertys/item_property[@xml_name='название_тега_вашей1ой_галки']/value='1' ">
         <!-- Шаблон вывода информационного элемента -->
   <xsl:template match="blocks/items/item">
      
      <div style="margin-right: 10px; margin-bottom: 20px;">
         
         <!-- Дата время -->
         <span class="date">
            <xsl:value-of disable-output-escaping="yes" select="item_datetime"/>
         </span>
         
         <!-- Название -->
         <p class="news_title">
            <a href="{item_path}">
               <xsl:value-of disable-output-escaping="yes" select="item_name"/>
            </a>
         </p>
         
         <!-- Изображение для информационного элемента (если есть) -->
         <xsl:if test="item_small_image!=''">
            <a href="{item_path}" class="news_title">
               <img src="{item_small_image}" class="news_img" alt="" align="left"/>
            </a>
         </xsl:if>
         
         <xsl:value-of disable-output-escaping="yes" select="item_description"/>
         
         <xsl:if test="count(tags/tag) &gt; 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>
         
         
         <p>
            <xsl:if test="count(site_user) &gt; 0">
               <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>
            <xsl:if test="count(item_comments/comment) &gt; 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)"/>&#xA0;<xsl:call-template name="declension">
                  <xsl:with-param name="number" select="count(item_comments//comment)"/></xsl:call-template></a>
            </xsl:if>
         </p>
         
         <div style="clear: both;"></div>
      </div>
   </xsl:template></xsl:if>
   </xsl:template>
   <xsl:template match="blocks/items/item" mode="second">
      <xsl:if test="item_propertys/item_property[@xml_name='название_тега_вашей2ой_галки']/value='1' ">
<!-- Шаблон вывода информационного элемента -->
   <xsl:template match="blocks/items/item">
      
      <div style="margin-right: 10px; margin-bottom: 20px;">
         
         <!-- Дата время -->
         <span class="date">
            <xsl:value-of disable-output-escaping="yes" select="item_datetime"/>
         </span>
         
         <!-- Название -->
         <p class="news_title">
            <a href="{item_path}">
               <xsl:value-of disable-output-escaping="yes" select="item_name"/>
            </a>
         </p>
         
         <!-- Изображение для информационного элемента (если есть) -->
         <xsl:if test="item_small_image!=''">
            <a href="{item_path}" class="news_title">
               <img src="{item_small_image}" class="news_img" alt="" align="left"/>
            </a>
         </xsl:if>
         
         <xsl:value-of disable-output-escaping="yes" select="item_description"/>
         
         <xsl:if test="count(tags/tag) &gt; 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>
         
         
         <p>
            <xsl:if test="count(site_user) &gt; 0">
               <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>
            <xsl:if test="count(item_comments/comment) &gt; 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)"/>&#xA0;<xsl:call-template name="declension">
                  <xsl:with-param name="number" select="count(item_comments//comment)"/></xsl:call-template></a>
            </xsl:if>
         </p>
         
         <div style="clear: both;"></div>
      </div>
   </xsl:template> </xsl:if>
   </xsl:template>
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
#
Re: в разные колонки в зависимости от доп свойства?
мне нужно из этой ИС выводить статьи (в 3 колонки). С помощью гостевой книги разве можно это сделать?
///
#
Re: в разные колонки в зависимости от доп свойства?
можно добавить условие в вызов шаблона
<!-- 1 блок -->
<div><xsl:apply-templates select="blocks/items/item[item_status=1 and item_propertys/item_property[@xml_name='ИМЯ ФЛАЖКА 1']/value=1]"/></div>
<!-- 2 блок -->
<div><xsl:apply-templates select="blocks/items/item[item_status=1 and item_propertys/item_property[@xml_name='ИМЯ ФЛАЖКА 2']/value=1]"/></div>
<!-- 3 блок -->
<div><xsl:apply-templates select="blocks/items/item[item_status=1 and item_propertys/item_property[@xml_name='ИМЯ ФЛАЖКА 3']/value=1]"/></div>
#
Re: в разные колонки в зависимости от доп свойства?
а что мне в макете сайта прописывать?  как сказать, чтобы он к нужному шаблону обращался?
///
#
Re: в разные колонки в зависимости от доп свойства?
shadow755 писал(а):
а что мне в макете сайта прописывать? как сказать, чтобы он к нужному шаблону обращался?


ну если вы на страницу выводите только эти Статьи, то в Структуре выбирете тип страницы типовая динамическая страница, Информационная система, выберите свою ИС отвечающую за статьи, а там выбирете Xsl шаблоны которые будете использовать для вывода списка элементов, и каждого элемента соответс.
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
#
Re: в разные колонки в зависимости от доп свойства?
Сейчас я делаю это так:


            <div class="stat-center">
             <?php
              $external_properties = array();
              $external_properties['НовостиНаГлавной'] = 1;
              $external_properties['ОтображатьСсылкуНаАрхив'] = 0;
              $InformationSystem->ShowInformationSystem(17, false, 'СписокНовостейСайт3', 100, 0, $external_properties);
            ?>
           </div>
///
#
Re: в разные колонки в зависимости от доп свойства?
соответственно это для центральной колонки.

(т.е. сейчас я сделал 3 информационных системы, которыми неудобно управлять)
///
#
Re: в разные колонки в зависимости от доп свойства?
зачем 3и информационных системы?????
вы же сами сказали, что  у вас галками будет управляться
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
#
Re: в разные колонки в зависимости от доп свойства?
три это сейчас.  и привел пример как я вывожу ИС в шаблоне.   а на галки хочу переделать...
///
Авторизация