Kirill
Новичок
xml + html в шаблон
В цмс сделано так что у страницы есть текстовое содержание (html, генерируется визуальным редактором) и есть содержание обработчика. Т.е. к примеру:
Есть страница "Новости". Её обработчик - модуль новостей. У страницы получается 2 содержания - 1 текстовое (которое пользователь может ввести через визуальный редактор), 2 содержание - содержание обработчика (в зависимости от параметров либо список новостей либо сама новость).
При редактировании в визуальном редакторе есть блок, который удалить нельзя. Вместо него в текст втсавляется последовательность:
{!handler_content!}
Затем эту последовательность нужно заменить на то, что сгенерит обработчик. (к примеру для обработчика новостей эту последовательность нужно заменить на список новостей, или на просмотр конкретной новости)
Каждый обработчик отдает управляющему классу xml и назнвание шаблона. Управляющий класс подбирает нужный шаблон , применяет его и отдает html.
Так вот вопрос:
Как лучше все это сделать? Я вижу два пути:
1) В xml будет нода с page content (т.е. с тем что ввел пользователь через визуальный редактор) и нода новостей. В XSLT шаблоне сначала получаю html новостей, а затем в содержании ноды page_content заменяю {!handler_content!} на html новостей.
2) В обработчике новостей дроблю содержание, которое пользователь ввел через визуальный редактор на 2 части:
top и bottom (до {!handler_content!} и после). Соответственно вместо ноды page_content будет две top_content и bottom_content.
Я склоняюсь ко 2 варианту, т.к. в каждом шаблоне обработчика не прийдется повторять один и тот же кусок кода.
В цмс сделано так что у страницы есть текстовое содержание (html, генерируется визуальным редактором) и есть содержание обработчика. Т.е. к примеру:
Есть страница "Новости". Её обработчик - модуль новостей. У страницы получается 2 содержания - 1 текстовое (которое пользователь может ввести через визуальный редактор), 2 содержание - содержание обработчика (в зависимости от параметров либо список новостей либо сама новость).
При редактировании в визуальном редакторе есть блок, который удалить нельзя. Вместо него в текст втсавляется последовательность:
{!handler_content!}
Затем эту последовательность нужно заменить на то, что сгенерит обработчик. (к примеру для обработчика новостей эту последовательность нужно заменить на список новостей, или на просмотр конкретной новости)
Каждый обработчик отдает управляющему классу xml и назнвание шаблона. Управляющий класс подбирает нужный шаблон , применяет его и отдает html.
Так вот вопрос:
Как лучше все это сделать? Я вижу два пути:
1) В xml будет нода с page content (т.е. с тем что ввел пользователь через визуальный редактор) и нода новостей. В XSLT шаблоне сначала получаю html новостей, а затем в содержании ноды page_content заменяю {!handler_content!} на html новостей.
2) В обработчике новостей дроблю содержание, которое пользователь ввел через визуальный редактор на 2 части:
top и bottom (до {!handler_content!} и после). Соответственно вместо ноды page_content будет две top_content и bottom_content.
Я склоняюсь ко 2 варианту, т.к. в каждом шаблоне обработчика не прийдется повторять один и тот же кусок кода.