Конструкция {php}echo cmsModule("module_position");{/php}

#1 7 июля 2014 в 04:24
Конструкция {php}echo cmsModule("module_position");{/php} больше не актуальна в 1.10.4.
Как в текущей версии выводить позиции модулей в шаблонах?

И второй вопрос, как вывести позиции модулей в шаблоне, какого либо модуля?
То есть модуль в модуле.
#2 7 июля 2014 в 10:43

Конструкция {php}echo cmsModule("module_position");{/php} больше не актуальна в 1.10.4.
Как в текущей версии выводить позиции модулей в шаблонах?

alexbabo

  1.  
  2. <?php $this->printModules('ваша_позиция'); ?>
  3.  
#3 7 июля 2014 в 16:29


Конструкция {php}echo cmsModule("module_position");{/php} больше не актуальна в 1.10.4.
Как в текущей версии выводить позиции модулей в шаблонах?

alexbabo

  1.  
  2.  
  3.  

AlexWerner

То что вы написали работает только в template.tpl
#4 7 июля 2014 в 16:56


То что вы написали работает только в template.tpl

alexbabo
А по моему должно работать во всех .tpl файлах.
#5 7 июля 2014 в 17:20



То что вы написали работает только в template.tpl

alexbabo
А по моему должно работать во всех .tpl файлах.

Доротея

я пробовал и не работало, попробуйте и вы, может у вас заработает, расскажете потом как :)
#6 7 июля 2014 в 17:33

cmsModule

alexbabo
было убрано в 10,4, и еще какие-то. В релизе описано, а вот что вместо них — самому хотелось бы узнать.
#7 18 июля 2014 в 20:45
Может кто подскажет, как всё таки как надо?
#8 18 июля 2014 в 23:10
Добавьте в sitename.ru/core/cms.php где-то (например, в самом конце):

  1. function cmsModule($position){
  2. cmsPage::getInstance()->printModules($position);
  3. }
Будет тогда выводиться по тому же принципу, как и прежде:

  1. {php}echo cmsModule('some_position'){/php}
Может, топорно, но хоть как-то…
#9 19 июля 2014 в 02:31


Добавьте в sitename.ru/core/cms.php где-то (например, в самом конце):

  1. function cmsModule($position){
  2. cmsPage::getInstance()->printModules($position);
  3. }
Будет тогда выводиться по тому же принципу, как и прежде:

  1. {php}echo cmsModule('some_position'){/php}
Может, топорно, но хоть как-то...

Джехутимери

Спасибо работает.
Но это изменения ядра и возвращение обратно к 1.10.3.
Мне интересно как в 1.10.4 можно выводить позиции в модулях.
Вам большое спасибо за помощь.
Вопрос оставляю открытым.
#10 20 июля 2014 в 01:16
alexbabo, ну чтобы правильно и без изменений, то:

  1. {php}cmsPage::getInstance()->printModules('some_position'){/php}
А вот модуль в модуле можно вывести так (в файле шаблона модуля в конце вписать):

  1. {php}cmsPage::getInstance()->printModule('mod_name'){/php}
#11 20 июля 2014 в 02:11
На примере своего шаблона:
В конце mod_latest.tpl вписал:

  1. {php}cmsPage::getInstance()->printModule('mod_tags'){/php}
Вышло так:

Вот только зачем это может пригодиться — ума не приложу… scratch
#12 20 июля 2014 в 11:34
Только в файлах компонентов (по крайней мере тех, где циклы присутствуют) лучше вставлять модули в конце (по крайней мере, ниже цикла) — возникают "непонятки". Ещё с 1.10.3 так
#13 24 июля 2014 в 19:28


alexbabo, ну чтобы правильно и без изменений, то:

  1. {php}cmsPage::getInstance()->printModules('some_position'){/php}
А вот модуль в модуле можно вывести так (в файле шаблона модуля в конце вписать):

  1. {php}cmsPage::getInstance()->printModule('mod_name'){/php}

Джехутимери

Спасибо большое, всё работает.
Про модуль в модуле: я может немного не правильно выразился, я хотел бы в модуль вставить модульную позицию, даже несколько позиций, чтобы выводить нужный модуль в модуле.
Возможно то что вы подсказали тоже работает в этом плане, надо попробовать.
Спасибо ещё раз.

Но одна загвоздка, после вставки модульной позиции в профиль, исчезает стена пользователя, только если вставить модульную позицию в самом конце шаблона профиля пользователя, тогда всё ок.Возможно об этом же и пишет Олег Васильевич я:

Только в файлах компонентов (по крайней мере тех, где циклы присутствуют) лучше вставлять модули в конце (по крайней мере, ниже цикла) — возникают "непонятки". Ещё с 1.10.3 так

Олег Васильевич я
#14 21 августа 2014 в 02:20
Большое спасибо за разъяснение, сам лопатил инстант наверное часа 2, потом плюнул и полез в форум, а тут оказывается все решено )
#15 17 октября 2014 в 15:19

Только в файлах компонентов (по крайней мере тех, где циклы присутствуют) лучше вставлять модули в конце (по крайней мере, ниже цикла) — возникают "непонятки". Ещё с 1.10.3 так

dasinok
это как то удалось кому то решить. тоже мучался с картами )) объекты не выводило
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.