我正在Sitecore网站上工作,对于主文件,我想检查一下我是否在主页上。如果我是,那么我想为动画文件的内容显示一个脚本标记(注意:我真的不能把脚本移动到另一个文件——它必须是原样)
我对服务器端包含/语句不太熟悉,但我知道有可能对服务器端if语句进行这样的检查:
<!--#if is home page, then show the script tag -->
<script type="text/javascript" charset="utf-8" src="/scripts/Subpages/Main-Image-2_edgePreload.js"></script>
<!--#endif -->
不过,我不知道该怎么检查。。。。有没有办法检查页面URL、页面名称或页面ID?
您可以通过检查起始项的值来确定当前页面是否为主页。
在web.config中,您将拥有StartItem,它将指向Sitecore实例中的主节点。
<site name="website" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/" startItem="/home" database="web" />
您可以通过在Sitecore API 中使用此值来访问此值
Sitecore.Context.Site.StartPath.
然后,您可以对此使用GetItem命令来解析项,并将其与上下文项进行比较。
Item startItem = Sitecore.Context.Database.GetItem(Sitecore.Context.Site.StartPath);
// check if page is home page
if(startItem.ID.Equals(Sitecore.Context.Item.ID))
{
}
这里也有答案:
如何在sitecore中确定给定项目是否为起始项目?