IgorA100 90 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 (изменено) Есть страница (не относящаяся к DLE), на которой необходимо выводить различную информацию, к примеру опрос. После необходимых шагов инициализации, мы имеем в $tpl->result['vote'] необходимый код для опроса, все прекрасно работает и выводится, НО! там прописано {THEME} вместо реального пути. Далее, в $config['http_home_url'] . 'templates/' . $config['skin'] мы имеем реальный путь к шаблонам. Вопрос: как в $tpl->result['vote'] заменить {THEME} на реальный путь и вывести на странице? Такая конструкция не работает $tpl->result['vote']->set ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'] ); А такая: echo $tpl->result['vote']; выводит данные без реального пути шаблона ЗЫ: Извиняюсь, если коряво объяснил, т.к. в php имею только базовые знания ЗЫЗЫ: Лицензия 8.0 , но еще не активирована. Изменено 3 августа 2009 пользователем IgorA100 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 должно быть $tpl->result['vote'] = str_replace ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'], $tpl->result['vote'] ); Цитата Ссылка на сообщение Поделиться на других сайтах
IgorA100 90 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 Автор Гениально, Спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
Al-x 7 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 $tpl->result['vote']->set ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'] ); по идее пхп вообще должен выдать ошибку. Есть функция (метод) $tpl->set ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'] ); но его надо ставить до $tpl->compile('vote'); Цитата Ссылка на сообщение Поделиться на других сайтах
IgorA100 90 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 (изменено) Автор по идее пхп вообще должен выдать ошибку. Ну да. ошибка и выдавалась.... $tpl->set ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'] ); но его надо ставить до $tpl->compile('vote'); Так тоже пробовал - не работает... А вот так: $tpl->result['vote'] = str_replace ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'], $tpl->result['vote'] ); Именно то, что надо Изменено 3 августа 2009 пользователем IgorA100 Цитата Ссылка на сообщение Поделиться на других сайтах
Al-x 7 Опубликовано: 3 августа 2009 Рассказать Опубликовано: 3 августа 2009 Так тоже пробовал - не работает... не там вставлял судя по всему. Нужно вставлять между загрузкой шаблона голосования и его компиляцией (в файле генерации опроса). а $tpl->result['vote'] = str_replace ( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'], $tpl->result['vote'] ); вот это вставляется уже в любом месте после компиляции. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.