Как вы переопределяете рендеринг зоны навигации в 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-адресов альтернативных имен для имени вашего шаблона, чтобы переопределить рендеринг по умолчанию.