Здравствуйте. Помогите разобраться. Есть код на PHP,мне его нужно вставить в определенное место на сайте,но когда вставляю не работает, так как видимо расширение файла куда вставляю .tpl. Как можно сделать,чтобы код там работал?
Пробовал:
1.Нашел файл формата php,в котором подключается tpl,хотел организовать функцией,но так и не понял,что там писать.
2.В файл с расширением .tpl вставить php код между {php} тоже не работает.
Естественно, что он не работает там, потому что в .tpl-файлах не должно быть кода PHP - это шаблоны, которые результат работы PHP-кода получают в виде переменных. Найдите, где вызывается нужный вам шаблон, и передайте ему необходимую строку в качестве переменной.
Спасибо! Помогло.Только единственное почему-то теперь ,когда переменной присваиваю строку например $d="Всегда лучшая стоимость обучения" ,а затем пытаюсь вывести на сайте,выводится только первое слово,а точнее до первого пробела. Можно ли как-то вывести целиком,чтобы не создать на каждое слово по переменной и не использовать конкатенацию?
Приведите, пожалуйста, код шаблона (tpl) и PHP-код, где у вас вызывается шаблон.
И посмотрите в DOM-инспекторе ("Инспектировать" в контекстном меню на первом слове) - может в исходном HTML-коде у вас полностью текст, а оставшиеся слова "съедаются" из-за некорректной вёрстки.
verdex: .tpl-файлы, как правило, принадлежат шаблонизаторам Smarty/Dwoo, которые их читают напрямую из файловой системы и затем компилируют в .php-файлы. При этом включать PHP-код в шаблоны напрямую запрещено (хотя для Smarty был когда-то такой модуль, но его быстро исключили).
Поэтому:
1. ТС не нужно выполнять PHP-код в .tpl файлах, этот вопрос решается иначе.
2. Даже если бы ему это было нужно - .tpl-файлы всё равно не вызываются напрямую через браузер, а используются внутри CMS, поэтому вешать на них обработчик PHP бесполезно.
И к вопросу, почему это опасно - некоторые CMS позволяют редактировать шаблоны в формате .tpl из админки, поэтому если эти файлы будут обрабатываться как PHP-скрипты, то потенциальный взломщик сможет исполнять произвольный код на сервере, лишь получив доступ к админ-панели.