【发布时间】:2014-04-04 22:50:27
【问题描述】:
这可能是一个新手 Q...我正在为我的 Web 应用程序使用 Sitecore 7,这就是我目前所拥有的
数据模板 - 这只有一个名为“标题”的字段来显示页面特定的标题
一个布局 - 这是指向我在 asp.net mvc 项目路径下的 cshtml 文件。这具有从 Doctype 开始的完整标记。 head 标签下的标题标签使用 Sitecore 的 Html 扩展来呈现 #1 中提到的模板中的“标题”字段。这也通过布局的body标签下称为“page-body”的占位符呈现sitecore的视图。
我在我的 asp.net mvc 项目中创建了一个指向 Razor 视图的视图渲染。这个视图只是让 h1 调用 hello world。
Sitecore/Content/Home 项目(来自 sitecore 的主树)使用在 #1 中创建的模板并使用在 #2 中创建的布局。此项目在#3 中创建了一个且只有一个渲染
现在,当我从本地 sitecore 网站访问根目录时,一切看起来都不错!我在body标签下的H1标签中看到Hello World,布局中提到了完整的html makrup...
这就是事情开始变得复杂的地方...现在我希望我的视图渲染(在 #3 中创建)引用一个仅针对此渲染的 CSS 文件。此 CSS 不会被引用到所有页面。当然,我想将引用作为链接 href 添加到头部。所以尝试使用asp.net mvs“Section”,但我一直收到那个甜蜜的错误“无法直接请求文件,因为它调用了rendersection方法......”所以我意识到我的视图渲染没有任何@{Layout =” ..."} 当然是由 sitecore 引擎控制的!!
所以我仍然继续在我的视图渲染的 cshtml 文件中添加布局引用,并引用与 Sitecore 引擎相同的布局文件(即上面的 #2)。我仍然有同样的错误。
然后我发现了一个帖子Using sections in Editor/Display templates,它本质上是针对脚本的,并尝试为 CSS 实现。但这也不起作用,因为 View Rendering 在执行 head 标记中的 Helper 之后执行,因此我的 CSS 引用永远不会在流中吐出。顺便说一句,这个解决方案非常适合脚本,因为脚本渲染助手是在 Sitecore 的视图渲染之后调用的。
在这一点上,我完全被困在“如何在 head 标签中获取我的 CSS ref 以进行视图渲染”。有任何 sitecore 专家可以在这里提供帮助吗?
【问题讨论】:
-
为什么不在 all 页面上包含 all 您的 CSS,并使用 CSS 选择器仅在你的渲染,通过
ID或 cssclass选择器?