Как вы переопределяете рендеринг зоны навигации в Orchard CMS?

Я новичок в Orchard, поэтому я, вероятно, не знаю, что я делаю.

Я выяснил, как переопределить различные формы, но поместив файл cshtml в папку View с тем же именем, что и форма.

Кроме того, я нашел файлы cshtml формы Menu и MenuItem в файлах Core Orchard.

Однако я не вижу форму с именем Навигация, и я не совсем понимаю, как работают зоны.

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

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

Ответы

Ответ 1

Зоны также являются фигурами, но они объявляются в коде (Core/Shapes/CoreShapes.cs), а не в файлах .cshtml, таких как большинство форм. Кроме того, нет формы, называемой Navigation, так как зоны создаются динамически во время выполнения - имена этих объектов предоставляются используемой темой.

Зоны имеют переменные по умолчанию в форме Зона __ [ZoneName]. Это означает, что вам просто нужно поместить файл Zone-Navigation.cshtml в папку /Views в папке темы для переопределения рендеринга зоны навигации.

Ответ 2

Если вы используете последнюю версию 1.1.3, вы можете использовать новый инструмент отслеживания фигур из конструкторский модуль инструментов. Он предоставляет список URL-адресов альтернативных имен для имени вашего шаблона, чтобы переопределить рендеринг по умолчанию.