Здравствуйте. Помогите, пожалуйста, разобраться.
Есть xsl шаблон - ФормаПодбора.
Есть ТДС - Отображение формы подбора.
ТДС имеет параметр - Название: XSL формы подбора; Название переменной: formPodborXsl
Если я в структуре сайта выберу тип раздела - ТДС, укажу страницу и xsl, а потом в коде страницы определю имя шаблона вот так:
$xslName = Core_Array::get(Core_Page::instance()->libParams, 'formPodborXsl');
$Shop_Controller_Show
->xsl(
Core_Entity::factory('Xsl')->getByName($xslName )
)
Всё работает, как ожидается. Но я хочу использовать эту ТДС в секции макета.. И тут проблема.
В структуре сайта для страницы указываю тип раздела - страница.
Для макета создаю:
секцию - название: Форма подбора за 5 минут; псевдоним: formPodbor5
Для этой секции создаю:
виджет - атрибуты class и style оставляю пустыми; указываю страницу и xsl, описанные выше.
В макете вызываю секцию:
<?php
$this->showSection('formPodbor5');
?>
И, открывая страницу - ошибки....
×Wrong Xsl object "Core_Controller".
modules/core/controller.php:182 Core_Exception->__construct
hostcmsfiles/lib/lib_72/lib_72.php:12 Core_Controller->xsl
modules/lib/model.php:278 include
modules/template/section/lib/model.php:167 Lib_Model->execute
modules/template/model.php:801 Template_Section_Lib_Model->execute
templates/template18/template.htm:243 Template_Model->showSection
modules/template/model.php:103 include
modules/core/page.php:166 Template_Model->execute
templates/template13/template.htm:213 Core_Page->execute
modules/template/model.php:103 include
modules/core/page.php:166 Template_Model->execute
modules/core/command/controller/default.php:583 Core_Page->execute
modules/core/router/route.php:195 Core_Command_Controller_Default->showAction
index.php:238 Core_Router_Route->execute
Ругательство на строку
Core_Entity::factory('Xsl')->getByName($xslName)
Если имя шаблона указать так:
Core_Entity::factory('Xsl')->getByName("ФормаПодбора")
То всё работает. Почему нельзя имя шаблона из параметра взять? Что-то делаю не так?