2017-01-25 7 views
0

У меня есть шаблон общей страницы, который я хочу повторно использовать для большого количества страниц, но на каждой странице также должен быть свой собственный шаблон. Например, шаблон общей страницы может включать в себя баннер страницы и панировочные сухари.Любой способ сделать шаблон страницы наследованием от другого шаблона страницы без родителя, существующего в качестве страницы в Kentico?

Способ, которым я в настоящее время занимаюсь этим, заключается в том, что каждая страница является рекламным клоном шаблона общего типа, однако это нелегко справиться, когда необходимо внести изменения в общий шаблон, поскольку мне тогда нужно сделать это изменение на всех специальных шаблонах.

Я мог бы обойти это, создав новую страницу, которая использует общий шаблон на родительском уровне, а затем вложит в нее все мои страницы, действуя в качестве главной страницы, но я чувствую, что это загрязняет дерево контента без необходимости, поскольку я уже имеют шаблон шаблона в самом корне.

Есть ли способ заставить шаблоны страниц наследовать от других шаблонов без фактической создания физической главной страницы в дереве контента?

Если бы можно было создать определенные контейнеры веб-страниц, не разделяемые на все страницы, которые используют тот же шаблон, который будет работать.

ответ

1

ad-hoc не очень хорошо, как вы понимаете.

У вас может быть 2 основных шаблона: 1 будет вашим корнем, второй - в дереве. Все страницы по второму мастера могут наследовать оба шаблона на то же самое время: Например у вас есть:

  • мастер корень для всего сайта, который содержит меню сайта и нижний колонтитулы и заполнитель
  • ваш магазин мастер шаблон для вас магазин в котором есть меню магазина, баннер и местозаполнитель.

Все ваши продукты под управлением магазина наследуют мастер и хозяин корня. Для этого вы должны пойти шаблон> конкретные страницы предков> и проверить оба мастера: корень и магазин

Другой вариант для совместного использования контента - это добавить веб-часть заполнителя на свои страницы и указать его на общую страницу (вы должны установить Свойство «Страница для отображения». У меня есть несколько мастеров, которые совершенно разные, но они имеют один и тот же нижний колонтитул. Поэтому у меня есть держатель места на обоих из них, которые указывают на эту общую страницу нижнего колонтитула.

+0

Принял этот ответ из-за детали наследования. Проверка обеих основных страниц фиксировала некоторые вещи для меня. – Jazcash

1

Если шаблон страницы наследуется от другого шаблона, то проблема в том, что если вы не используете этот шаблон страницы на странице, не будет содержимого для шаблона дочерней страницы, наследуемого от таких поражений, как цель наследования , Лучше всего было бы добавить эти элементы в шаблон родительской страницы. Предполагая, что дерево контента, как так:

  • Page
    - Страница 1
    - Страница 2

На "Страница" добавить свои элементы в этом шаблоне и скрыть или показать их основе на странице тип и уровень. Затем для страниц «Страница 1» и «Страница 2» задайте шаблон страницы по умолчанию для этих типов страниц. Тогда пользователю не нужно будет добавлять или выбирать шаблон, он будет автоматически выбирать для них. Тогда все, что им нужно сделать, это добавить контент для баннера под этой страницей «Страница 1» или «Страница 2». Затем панировочные сухари должны автоматически отображаться на основе дочерней страницы, отображающей или устанавливающей уровень узла.

+0

Хорошо, я прошел этот маршрут, потому что это не похоже на то, что вокруг него есть какой-то другой способ. Спасибо, в любом случае! Мое дерево контента теперь похоже на «WebsiteName -> Generic Template -> Content Page', и, я думаю, мой следующий вопрос будет заключаться в том, как сделать компоненты, такие как Breadcrumbs, игнорировать этот средний уровень. – Jazcash

 Смежные вопросы

  • Нет связанных вопросов^_^