0

您能否帮助将标题设置为页面名称而不是 Sitefinity 小部件中的数据?我努力了

var urlName = SiteMapBase.GetActualCurrentNode().UrlName;
var pageHandler = this.ViewContext.HttpContext.Handler.GetPageHandler();
pageHandler.Title = urlName.ToUpperInvariant();
pageHandler.Page.Title = "MyTitle";

但它不起作用。Sitefinity 13.1 的一个版本。

4

3 回答 3

0

你只是想说

ViewBag.Title = "My title";

在控制器动作中?

于 2020-10-03T12:07:25.343 回答
0

这适用于 12.2,但无法尝试 13.1

SiteMapBase.GetActualCurrentNode().Title

于 2020-10-21T06:51:04.477 回答
0

您在页面生命周期的哪个阶段设置它?

Sitefinity 很可能会在您的代码之后重写它。

您最好的选择是将您的代码放在 PreRenderComplete 事件上。

所以,你知道你是如何找到 pageHandler 的 - 尝试订阅它的 PreRenderComplete 事件并在那里设置页面的标题。

于 2020-10-03T10:12:46.810 回答