Вставка php кода на целевые страницы - 2.x
Нужны любые идеи и мысли по реализации следующего:
Необходимо вставить php код на все страницы которые заканчиваются на .html
Вставка не средствами движка а ручками, желательно в main.tpl.php
Как правильно прописать условие?
Для этого есть \templates\default\content\default_item.tpl.php и ему подобные или на крайний случай
Это понятно, но наверняка можно прописать какое либо условие для main.tpl.php, что бы код выводился только на страницах с окончанием .html
В интернете достаточно примеров по проверке адреса на входящие значения, но интересует максимально правильный вариант именно для icms2, возможно есть какие либо специальные операторы в движке или другое…
Хочется код прописать в одном месте один раз, что бы при добавлении новых типов контента не нужно было создавать личные шаблоны…
Но за рекомендацию спасибо!
$inCore = cmsCore::getInstance(); if (preg_match('/^([a-z0-9\-_]+)\/([a-z0-9\-\/]+).html$/i', $inCore->uri, $is_item) && $inCore->controller == 'content'){ ....... }
файл \templates\default\controllers\content\item_view.tpl.php как раз таки один для всех шаблонов.
Для всех, если нет собственных!)
придётся на каждой странице делать проверку, что не есть гуд.
Это сильно плохо?
При включенном кешировании проверка будет ведь не каждый раз, на сколько понимаю…
Для всех-привсех. Сам файл \templates\default\content\default_item.tpl.php и его правленые копии типа \templates\default\content\default_тип_контента_item.tpl.php проходят через \templates\default\controllers\content\item_view.tpl.php в строках 61-67.Для всех, если нет собственных!)
не сильно, но плохо. Будет проверяться даже там, где нет типов контента вообще.Это сильно плохо?
item_view.tpl.php
При добавлении в этот файл информация выводится на всех ..._item.tpl.php?
Да, ответил уже выше.При добавлении в этот файл информация выводится на всех ..._item.tpl.php ?
Для всех-привсех. Сам файл \templates\default\content\default_item.tpl.php и его правленые копии типа
Ага, понял, отлично.
Спасибо, думаю вопрос решен!
Проверил — то что доктор прописал!