0

我在 Kentico 有一个页面,它显示来自自定义表的数据。自定义表格字段之一是页面标题,我不知道如何在...中显示页面标题字段

<title></title>

...标签

我能做到的最接近的事情是将 uri 的一部分显示为标题,因此 /promo/ page-title将创建一个标题

<title>page-title</title>

由于三个原因,Wich 不太理想:

  1. /promo/pAgE-TItle 将标题显示为pAgE-TItle
  2. 破折号仍然存在于网址
  3. 来自 uri 的文本实际上只是一个 slug,表示自定义表中的数据(名为 programkey 的字段),并不总是与数据的实际标题相同

(编辑)

好的,感谢雷蒙德,有点摸索,这是我发现的作品(发布在自定义表格转换中):

    <script runat="server"> 
        private string Title { get; set;}
        private string Description { get; set;}
        private string Keywords { get; set;}
        protected override void OnDataBinding(EventArgs e)
        {
            base.OnDataBinding(e);
            // Get values from custom table
            Title = DataBinder.Eval(this.DataItem, "seo_title").ToString();
            Description = DataBinder.Eval(this.DataItem, "seo_desc").ToString();
            Keywords = DataBinder.Eval(this.DataItem, "seo_keywords").ToString();
            // Set values in meta tags
            CMSContext.CurrentTitle = Title;
            CMSContext.CurrentDescription = Description;
            CMSContext.CurrentKeyWords = Keywords;
        }
    </script>
4

2 回答 2

2

您还可以创建一个自定义宏,您将在其中使用 API 获取自定义表数据。然后,在页面标题/元数据设置中使用此宏

于 2013-07-06T08:41:12.290 回答
1

这应该可以解决问题:

  CMSContext.CurrentTitle = "asdasd";
于 2013-07-05T19:35:21.543 回答