CyberDron 0 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 На самом деле, вопрос немного не в сабже... Есть шаблон. В нём, допустим, обычный блок: <div class="box"> {custom category="4" template="custom" aviable="main" from="0" limit="100500" fixed="yes" order="date" cache="no"} </div> Но! Нужно чтобы эта строка генерилась в php. Сам php-код встроил (function.php и init.php поменял) - всё работает. Но не могу понять, как сделать так, чтобы конструкция "{custom ...}" выводилась не простым текстом, а обрабатывалась движком. Сейчас после возврата из функции, " {custom ...}" виден как текст. Помогите! Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 CyberDron, первый пункт правил Правила форума Внимание !!! На данном форуме существуют достаточно жесткие правила, поэтому прежде чем создавать свою тему убедитесь, что вы внимательно их прочитали и поняли. 1. Если ваша тема начинается с вопроса и вам нужна какая либо помощь, то в самой теме в обязательном порядке вы должны указывать ссылку на ваш сайт. Если ваш сайт находится в локальной сети и вы не можете предоставить ссылку, или вы не хотите публиковать открытой ссылки на ваш сайт, то отправляйте персональное сообщение с вопросом в службу поддержки непосредственно с сайта http://dle-news.ru/, вам ответят на ваш вопрос в персональном порядке, в случае если пользуетесь платной версией скрипта и обладаете лицензией на скрипт. Если вы пользуетесь демоверсией, то вам необходимо разместить сайт в сети интернет, и только потом обращаться за помощью. По находящимся на локальных компьютерах демоверсиям никакой помощи и поддержки на форуме не оказывается. Если вы не указали сайт, то ваша тема будет закрыта, а аккаунт на форуме заблокирован. и чуток подробнее по вопросу, ты custom вставляешь в .php код? Цитата Ссылка на сообщение Поделиться на других сайтах
CyberDron 0 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 Автор http://печеньеорео.рф Да, именно так. Блок с "custom" формируется в php-скрипте. И выводится в tpl как текст. А нужно чтобы обрабатывался движком, но в php. ))) Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 CyberDron, http://forum.dle-news.ru/index.php?showtopic=67741 Цитата Ссылка на сообщение Поделиться на других сайтах
CyberDron 0 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 Автор Спасибо! Но немного не то. Вот этих блоков: <div class="box"> {custom category="4" template="custom" aviable="main" from="0" limit="100500" fixed="yes" order="date" cache="no"}</div> должно быть несколько. Соответственно, все они должны формироваться динамически т.к. напрямую в custom указать category я не могу - они могут меняться в зависимости от разных условий. Именно поэтому в main.tpl я решил оставить только "{my_function}", а всё остальное генерить именно в этой функции. Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 17 апреля 2015 Рассказать Опубликовано: 17 апреля 2015 CyberDron, ты не внимательно посмотрел, там в коде есть if (stripos ( $tpl->copy_template, "{custom" ) !== false) { $tpl->copy_template = preg_replace_callback ( "#\\{custom(.+?)\\}#i", "custom_print", $tpl->copy_template ); } именно этот кусочек и обрабатывает тег {custom}но как я понимаю, твой .php файл должен лежать в папке engine/modules/ что бы dle обрабатывал его как «своего» Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.