@Lomiren
Web-программист

Шаблонизатор

Здравствуйте.
Хотелось бы внедрить систему шаблонов для разделов сайта.

Например есть 3 новостных раздела (заголовок, анонс, полная новость, дата). Нужно для каждого сделать свой шаблон для отображения списка новостей, просмотра полной новости, и допустим вывода куда то в колонку.

При этом каждый шаблон должен быть уникальным. Где то допустим не требуется выводить дату, где то требуется сделать ссылку на заголовок, где то на анонс и так далее… В итоге для одного новостного раздела — 3 разных шаблона. Желательно чтоб в шаблоне можно было писать какие то минимальные условия.

Хотелось бы чтоб шаблон можно было хранить в базе (знаю что это зло, но допустим если будет не 3 раздела а 30 и для каждого 3 своих шаблона итого 90 файлов)

Пробовал использовать tinyButStrong — интересно но в некоторых вещах не очень.

Или все же стоит использовать файлы и какой нибудь из распространенных шаблонизаторов?
  • Вопрос задан
  • 2469 просмотров
Пригласить эксперта
Ответы на вопрос 5
dudeonthehorse
@dudeonthehorse
Email Developer
А почему бы не написать условия при выводе?

if($date){echo $date}
if($link){echo'$title';}else{echo $title;}


и т.п.
Ответ написан
@Lomiren Автор вопроса
Web-программист
При выводе чего?

хочется чтоб верcтальшик зайдя в админку написал:

— Шаблон 1 — {date} {title}
{anons}

— — Шаблон 2 — {title}
{if image}

{else}

{end if}
{anons}
Дальше больше

— — Шаблон 3 — {date}

{anons}
----------
Ответ написан
@Lomiren Автор вопроса
Web-программист
Так будет понятней

— Шаблон 1 —
<div class="news">
<b>{date}</b>
{if link}
    <a href="{link}">{title}</a>
{else}
    {title}
{end if}

{anons}
</div>

 —  Шаблон 2 —
<div class="stat">
{title}
{if image}
    <img src="{image}"/>
{else}
    <img src="empty.jpg"/>
{end if}
{anons}
<a href="{link}">Дальше больше</a>
</div>

 —  Шаблон 3 —
<div class="other">
{date}

<a href="{link}">{anons}</a>
</div>

Ответ написан
@sergeyvolobuev
вам однозначно нужен Blitz
Ответ написан
Комментировать
@Lomiren Автор вопроса
Web-программист
Нашел опитмальное решение — Twig
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы