dotnetnuke: можем ли мы создать мастер-страницу?

Можем ли мы создать главную страницу с управляемым содержимым в dotnetnuke?

например. Я хочу, чтобы правая и нижняя панели управлялись содержимым, но отображали одно и то же на всех страницах.

Спасибо


person Aximili    schedule 30.07.2009    source источник
comment
вы можете задать этот вопрос на форумах DNN: dotnetnuke.com/Community /Forums/tabid/795/Default.aspx   -  person Mitch Wheat    schedule 30.07.2009


Ответы (2)


То, что вы описываете, по сути является тем, что DNN называет Skin.

Скин DNN на самом деле представляет собой просто пользовательский элемент управления ASP.NET (ascx), который диктует внешний вид страницы или всего сайта и предлагает разработчикам те же функции, что и мастер-страница, за исключением того, что он связан с элементами, специфичными для DNN, и использует некоторые пользовательские элементы управления DNN, такие как меню/навигация, логотип, хлебные крошки, ссылки для входа/учетной записи пользователя и т. д.

Теперь, чтобы добавить возможность предоставления возможностей управления контентом для всего сайта, вы указываете область в своей оболочке для размещения модуля (скажем, текстового/HTML-модуля). Эта область называется панелью. Как только вы добавите модуль на эту панель, в его настройках вы можете указать, чтобы он отображался на каждой странице. Таким образом, модуль можно редактировать на любой странице, а его изменения будут автоматически отражаться на всех страницах.

Посетите сайт DNN, так как он содержит ТОННУ документацию о том, как выполнять многие распространенные задачи: http://www.dotnetnuke.com/Support/Documentation/DownloadableFiles/tabid/478/Default.aspx. В разделе Техническая документация вам понадобится документ Skinning (кажется, в формате PDF).

person Tim S. Van Haren    schedule 30.07.2009
comment
Я бы прокомментировал, что если вы собираетесь добавлять контент на все страницы, он должен быть частью скина - если, конечно, это не что-то вроде новостей или RSS-каналов, которые постоянно меняются. - person braindice; 03.02.2012
comment
Это, вероятно, будет зависеть от того, нужна ли вам гибкость, чтобы иметь несколько скинов с глобальным модулем... - person klewis; 04.02.2017

Модули DNN можно настроить так, чтобы они отображались на всех страницах, установив флажок в настройках модуля. Однако DNN не использует концепцию главной страницы. Он внедряет модули (пользовательские элементы управления) в контейнеры на одной странице aspx во время выполнения.

Мастер-страница была бы отличным дополнением к DotNetNuke: вы не можете заменить контент в одной области страницы. Вся страница обновляется. Например, если у вас есть меню, и вы хотите, чтобы содержимое того, что вы выбираете, отображалось в определенной области содержимого без обновления остальной части страницы, вам придется прибегнуть к сторонним модулям, которые пытаются это сделать, но обычно терпят неудачу. Существуют «оболочки модулей», но все те, которые я тестировал, имеют проблемы с модулями, которые позволяют пользователю редактировать содержимое. Экраны редактирования обычно представляют собой различные пользовательские файлы управления (ascx), которые запускаются при редактировании содержимого модуля. Поскольку страница обновляется с новой страницей, вы потеряли свое место. Эти оболочки модулей отлично работают для статического содержимого и некоторых других элементов управления, но не для всех элементов управления.

IFrames можно использовать (у DNN есть один) для обмена контентом, но это не избавляет от упомянутых выше проблем. Я активно инвестирую в DNN, управляю веб-сайтом UCanUse.com, так что это не удар по DNN. Я просто подумал, что попытаюсь подробно ответить на вопрос.

person Richard Golko    schedule 13.12.2009