0

我是 Sitecore 的新手,并且在我的页面的代码隐藏中,我正在根据我为以前设计的页面所拥有的信息设置 Google 分析的值(我无法更改这些页面的基本结构)。我需要的大部分字段都在内容编辑器的 Sitecore 中设置,因此我可以通过以下方式访问它们

Sitecore.Content.Item.Fields["fieldname"]

但是,我需要的一件事是每个页面上徽标图像的 URL,它是使用页面编辑器插入的。我是否可以在代码隐藏的页面上获取页面编辑器对象?

4

3 回答 3

1

谷歌分析是客户端;考虑使用客户端脚本来检索徽标 URL 的值。为此,您的脚本需要在页面加载后执行。

如果你使用 jQuery,你可以做这样的事情

jQuery(document).ready(){
    var logoUrl = jQuery('.logo').attr("src");
}
于 2016-04-20T19:11:38.850 回答
0

我假设页面编辑器是指设计视图。如果是这样,请单击 Source 按钮以查看标记并找到包含 URL 的控件。给该控件一个唯一的 ID 并确保它具有 runat="server" 属性。之后,您将能够使用Me.<uniqueID>.

于 2016-04-20T18:09:20.410 回答
0

不,页面编辑器(体验编辑器)使用 JavaScript 来更改页面上的任何内容。然后在页面上进行的更改被传输到服务器并在那里应用,但它根本与页面的代码隐藏无关。这一切都是由自定义 Sitecore 管道完成的。但是,在应用更改(保存按钮)后,您将能够通过页面重新加载时的代码隐藏访问更改的字段。

所以,你有两个选择:

  1. 修补 Sitecore “SaveUI” 管道并向其添加处理器以获取更改并对其进行处理。
  2. 应用更改后等待,页面将重新加载,您将能够访问代码隐藏中的更改字段
于 2016-04-20T18:30:56.547 回答