Перейти к публикации

Двойное подключение к .tpl файлам через include не работает


Рекомендованные сообщения

Здравствуйте Ув.пользователи, у меня к Вам такой вопрос. В последнее время при разработке сайтов на DLE начал грешить более удобной структурой папок и т.д в самом коде. Конечно же можно хародкодить, но это не по мне. Задача следующая, есть у меня main.tpl - он инклюдится (подключается) к файлу catnav.tpl, оба файла шаблона находятся в корневой папке шаблона, в них все отлично работает, но когда пытаются уже далее из catnav.tpl подключить еще один файл, он подключается - но не работает основной функционал.

Не работаю все стандартные теги DLE(Спец теги), уже нельзя еще раз подключиться к какому либо еще файлу, и т.д. (Все введенные теги и т.д двиг просто выводит никак не обрабатывая)

Собственно, как сделать так, что бы можно было подключать .tpl файлы из разных папок и в любом кол-во и любой связке, дабы функции DLE оставались на месте ? Спасибо за внимание.

Все что на данный момент мне подсказали, это то что нужно копать в сторону templates.class.php, но честно говоря не сильно хорошо разбираюсь в php. По этому решил попросить помощи у оф.представителей.

Изменено пользователем Valet777
Ссылка на сообщение
Поделиться на других сайтах

Какие-то неточные у тебя описания. Обычно все остальные файлы инклудятся в main.tpl

И непонятно какой именно функционал не работает, конкретнее

Изменено пользователем Александр Медведев
Ссылка на сообщение
Поделиться на других сайтах

Какие-то неточные у тебя описания. Обычно все остальные файлы инклудятся в main.tpl

И непонятно какой именно функционал не работает, конкретнее

Может так будет более понятно, прикладываю изображение.

L050S040S021v5W2.png

Тег {info} в браузере так и будет {info}, допустим [category] Тоже будет отображаться просто как текст

Изменено пользователем Valet777
Ссылка на сообщение
Поделиться на других сайтах

но когда пытаются уже далее из catnav.tpl подключить еще один файл, он подключается - но не работает основной функционал.

Все верно так и должно быть. И других вариантов в данном случае нет. Теги поддерживаются только те, которые поддерживает основной шаблон из которого подключается другой файл, причем это наследование сохраняется только один раз и на один уровень. Причина этому безопасность скрипта, а также предотвращение бесконечного зацикливания, и как следствие падение сервера. Пример бесконечного зацикливания это если например в шаблоне main.tpl опять подключить main.tpl, это приведет к бесконечному циклу. Это и предотвращается. При этом имена не важны, бесконечность может получиться если из main.tpl подключить catnav.tpl а из catnav.tpl опять main.tpl

Ссылка на сообщение
Поделиться на других сайтах

но когда пытаются уже далее из catnav.tpl подключить еще один файл, он подключается - но не работает основной функционал.

Все верно так и должно быть. И других вариантов в данном случае нет. Теги поддерживаются только те, которые поддерживает основной шаблон из которого подключается другой файл, причем это наследование сохраняется только один раз и на один уровень. Причина этому безопасность скрипта, а также предотвращение бесконечного зацикливания, и как следствие падение сервера. Пример бесконечного зацикливания это если например в шаблоне main.tpl опять подключить main.tpl, это приведет к бесконечному циклу. Это и предотвращается. При этом имена не важны, бесконечность может получиться если из main.tpl подключить catnav.tpl а из catnav.tpl опять main.tpl

Ясно, безопасно это хорошо. Но нет ли возможности как то изменить этот вопрос ? открыть эту возможность, я ведь не враг сам себе, не буду зацикливать таким образом, просто такая возможность открыла бы для меня много способов решения многих задач :) собственно и недеялся, что мне здесь подскажут как добиться этого результата :D

Ссылка на сообщение
Поделиться на других сайтах

Но нет ли возможности как то изменить этот вопрос ?

Нет, эта функциональность не предусмотрена скриптом, ее нужно писать. Готового написанного решения у меня нет.

Ссылка на сообщение
Поделиться на других сайтах

Но нет ли возможности как то изменить этот вопрос ?

Нет, эта функциональность не предусмотрена скриптом, ее нужно писать. Готового написанного решения у меня нет.

Очень жаль, придется все в один файл вталкивать. Спасибо Вам большое за уделенное мне время, удачи Вам в работе.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...