来自自定义表的kentico页面标题

时间:2013-07-03 03:53:24

标签: asp.net content-management-system kentico

我在Kentico中有一个显示自定义表格数据的页面。其中一个自定义表格字段是页面标题,我无法弄清楚如何在...中显示页面标题字段。

<title></title>

...标签

我能得到的最接近的是显示部分uri作为标题,因此/ promo / page-title 将创建

的标题
<title>page-title</title>

由于三个原因,这是不可取的:

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

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

        <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>
    

2 个答案:

答案 0 :(得分:2)

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

中使用此宏

答案 1 :(得分:1)

这应该可以解决问题:

  CMSContext.CurrentTitle = "asdasd";