2016-11-20 2 views
2

Как динамически установить тег заголовка HTML на странице в Orchard?OrchardCMS, как установить тег заголовка HTML на заголовок страницы

У меня есть пользовательская тема, и из коробки Orchard устанавливает только имя файла в качестве названия страницы.

глядя в форме документа, я вижу это

<title>@Html.Title(title, siteName)</title> 

Так, например, если мой сайт называется «MySite» и моя страница называется «MyPage», название должно быть

<title>MySite - MyPage</title> 

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

Кроме того, я рассмотрел только с помощью JavaScript, чтобы задать заголовок, но а) я не знаю, как получить ручку на заголовок страницы и б) я не знаю, какая форма, в которой я бы сделать это

заранее спасибо

+1

Вы можете написать '@WorkContext.Layout.Title =" Независимо от того, где угодно в любом представлении Razor View, чтобы установить часть 'title', но она все равно будет отображаться как' MySite - Whatever'. Я также хотел бы знать, как легко переопределить полный заголовок. – Lawyerson

ответ

4

@Html.Title просто помощник, для которого вы можете найти исходный код здесь: https://github.com/OrchardCMS/Orchard/blob/6720b71cf3474a9a7b8a8cc9a99d58b1e733acfa/src/Orchard/Mvc/Html/LayoutExtensions.cs

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

<title>@Html.Title(title)</title> 

Обратите внимание, что вы также можете просто сделать <title>@title</title>.