как вызвать функции / методы в блоке CMS или на странице? - PullRequest
1 голос
/ 26 мая 2010

Мы пытаемся сделать все наши блоки и страницы статичными, чтобы дизайнер или кто-либо другой мог легко изменить содержание или дизайн сайта. Существует функция, которая использует наш собственный модуль. Итак, шаблон, который мы хотим сделать статическим, это вызов методов из нашего пользовательского блока, например,

 <!--some html code-->
    .....
    <?php $this->helpMeBePartOfCMS(); ?>
    .....
 <!--some html code-->

Как включить эти вызовы методов в блок или страницу cms?

Спасибо

Ответы [ 2 ]

2 голосов
/ 26 мая 2010

Система CMS позволяет легко включать пользовательские блоки (или виджеты в Enterprise), но не так просто выполнять вызовы методов. Это потому, что шаблоны никогда не анализируются как PHP, поэтому вы не можете просто включить тег PHP.

Почему бы вам не определить пользовательский блок для этого? Если это не сработает, пожалуйста, предоставьте немного больше информации о том, что вы на самом деле пытаетесь включить, чтобы мы могли продолжить поиск неисправностей.

Надеюсь, это поможет!

Спасибо, Джо


Поскольку шаблоны блоков CMS не анализируются как PHP-код, нет способа внедрить вызов, как вы описываете. Однако все классы, происходящие из Mage_Core_Block_Abstract, имеют возможность вызывать дочерние и родительские блоки. Используйте один из этих методов, чтобы сделать то, что вы ищете, непосредственно из блока:

getParentBlock
getChild
getSortedChildren
0 голосов
/ 04 января 2011

есть способ, которым вы вызываете эти php-коды в любом phtml-файле (создаете новый и сохраняете любое место в ваших шаблонах), а затем вызываете этот phtml-файл на вашей cms-странице как блок (что мы обычно делаем для вызывающих блоков)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...