вывод дополнительных свойств по поддоменам

#
вывод дополнительных свойств по поддоменам
Добрый день! Облазил форум не нашел ответа на свой вопрос. Требуется для разных поддоменов по городам в группах товара выводить разные дополнительные свойства (tekst_msk, tekst_spb ...).
Если мы на домене msk.domen.ru для категории выводить дополнительное свойство tekst_msk, если на spb.domen.ru соответственно tekst_spb

по типу простой реализации на php:

      <?
if ($_SERVER['SERVER_NAME'] == "msk.domen.ru")
   $name = "Москва";
else $name = "Питер";

      ?>
Ваш город: <?=$name?>


Подскажите пожалуйста каким образом реализовать в XSL шаблоне?
Модератор
#
Re: вывод дополнительных свойств по поддоменам
sgvampir,
все эти поддомены просто алиасы одного сайта или это разные сайты в системе управления?
#
Re: вывод дополнительных свойств по поддоменам
hostcms писал(а):
sgvampir,
все эти поддомены просто алиасы одного сайта или это разные сайты в системе управления?

один сайт в системе управления domen.ru с несколькими поддоменами *.msk.domen.ru, *.spb.domen.ru...
Модератор
#
Re: вывод дополнительных свойств по поддоменам
sgvampir,
контроллеры позволяют принимать внешние данные, которые потом пойдут корневому узлу в XML. Для этого используйте
->addEntity(
    Core::factory('Core_Xml_Entity')
        ->name('domain')
        ->value(Core_Array::get($_SERVER, 'SERVER_NAME'))
)
#
Re: вывод дополнительных свойств по поддоменам
в bootstrap.php можно добавить
Core_Event::attach('Shop_Controller_Show.onBeforeRedeclaredShow', array('My_Utils', 'beforeShow'));

и следующий код разместить в файле /modules/my/utils.php
<?php
class My_Utils {
   static public function beforeShow($object) {
      $object->addEntity(
         Core::factory('Core_Xml_Entity')
            ->name('domain')
            ->value(Core_Array::get($_SERVER, 'SERVER_NAME'))
      )
   }
}

для инфосистемы можно также добавить
Core_Event::attach('Informationsystem_Controller_Show.onBeforeRedeclaredShow', array('My_Utils', 'beforeShow'));
HostDev.pw - модули для HostCMS, Telegram: @hostdev
#
Re: вывод дополнительных свойств по поддоменам
EugenyP писал(а):
hostcms писал(а):


Спасибо за ответы, а как потом в самом XSL шаблоне реализовать?

так?
   
<xsl:if domain="msk.domen.ru">
      <xsl:value-of select="/shop//shop_group[@id=$group]/property_value[tag_name='tekst_msk']/value" disable-output-escaping="yes"/>
   </xsl:if>
#
Re: вывод дополнительных свойств по поддоменам
Вероятно, в данном случае больше подойдет инструкция choose https://www.hostcms.ru/documentation/step-by-step/xslt/choose/
«Не выходи из комнаты, не совершай ошибку…»
#
Re: вывод дополнительных свойств по поддоменам
hostcms писал(а):


Добавил в ТДС
$Shop_Controller_Show
      ->subgroups(TRUE)
      ->limit($limit)
->parseUrl()        
   ->addEntity(
    Core::factory('Core_Xml_Entity')
        ->name('domain')
        ->value(Core_Array::get($_SERVER, 'SERVER_NAME'))
);


вывожу
   
<xsl:if test = "domain = msk.domen.ru">
      <xsl:value-of select="/shop//shop_group[@id=$group]/property_value[tag_name='tekst_msk']/value" disable-output-escaping="yes"/>
   </xsl:if>

пустота.
Чего не хватает?
#
Re: вывод дополнительных свойств по поддоменам
sgvampir писал(а):
<xsl:if test = "domain = msk.domen.ru">

<xsl:if test = "/shop/domain = 'msk.domen.ru'">
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
#
Re: вывод дополнительных свойств по поддоменам
Seri писал(а):
<xsl:if test = "/shop/domain = 'msk.domen.ru'">

Благодарю!

Всем спасибо
Авторизация