我们在SDL Tridion 2009 SP1中有SiteEdit 2009 SP2,它适用于正常发布的页面.如果我们在页面中有单个动态组件演示(DCP),它也可以正常工作.但是当我们在页面上有多个DCP时,它只占用第一个并忽略所有其他DCP.
这是我的代码
<xsl:variable name="SE_CP_MarkUP">
<![CDATA[ <!-- Start SiteEdit Component Presentation: {"ID" : "cp_%ID%", "ComponentID" : "%ID%", "ComponentTemplateID" : "tcm:XX-XXXXX-32", "Version" : 0, "IsQueryBased" : true } -->]]>
Run Code Online (Sandbox Code Playgroud)
我在循环中使用这个变量
<xsl:value-of select="XXXX:RegexStringReplace($SE_CP_MarkUP,'%ID%',@ID)" disable-output-escaping="yes"/>
Run Code Online (Sandbox Code Playgroud)
请提出可能存在的问题?
更多详情:
生成的HTML
<div>
<!-- Start SiteEdit Component Presentation: {"ID" : "cp_tcm:13-287142", "ComponentID" : "tcm:13-287142", "ComponentTemplateID" : "tcm:13-286965-32", "Version" : 3, "IsQueryBased" : true } -->
HTMLConent
</div>
<div>
<!-- Start SiteEdit Component Presentation: {"ID" : "cp_tcm:13-287162", "ComponentID" : "tcm:13-287162", "ComponentTemplateID" : "tcm:13-286965-32", "Version" : 2, "IsQueryBased" : true } -->
HTMLConent
</div>
<div>
<!-- Start SiteEdit Component Presentation: {"ID" : "cp_tcm:13-287204", "ComponentID" : "tcm:13-287204", "ComponentTemplateID" : "tcm:13-286965-32", "Version" : 1, "IsQueryBased" : true } -->
HTMLConent
</div>
<div>
<!-- Start SiteEdit Component Presentation: {"ID" : "cp_tcm:13-287234", "ComponentID" : "tcm:13-287234", "ComponentTemplateID" : "tcm:13-286965-32", "Version" : 4, "IsQueryBased" : true } -->
HTMLConent
</div>
<div>
<!-- Start SiteEdit Component Presentation: {"ID" : "cp_tcm:13-287251", "ComponentID" : "tcm:13-287251", "ComponentTemplateID" : "tcm:13-286965-32", "Version" : 3, "IsQueryBased" : true } -->
HTMLConent
</div>
Run Code Online (Sandbox Code Playgroud)
SiteEdit设置
<!-- SiteEdit Settings: { "PageID" : "tcm:13-287332-64", "PageVersion" : 2, "TargetTypeID" : "", "ComponentPresentationLocation" : 1, "BluePrinting" : { "PageContext" : "tcm:0-8-1", "ComponentContext" : "tcm:0-13-1", "PublishContext" : "tcm:0-13-1"}} -->
Run Code Online (Sandbox Code Playgroud)
我在运行时超过了html.我只能在第一个CP上悬停时使用siteedit打开第一个组件,如果我将鼠标悬停在任何其他CP上,则无任何操作.
页面上也没有JS错误.
谢谢,Vikas Kumar
感谢您看到这一点,我刚刚意识到SiteEdit正在完成它的工作.所有SiteEdit标记div都具有相同的绝对位置,这样无论我在哪里悬停,div都显示在顶部.
我正在与设计团队合作对其进行排序.
谢谢,Vikas Kumar
SiteEdit组件表示标记应始终包含在像DIV这样的HTML元素中,这样SiteEdit就可以区分组件表示的开头和结尾.
所以在你的循环中你应该输出如下内容:
<div>
<xsl:value-of select="XXXX:RegexStringReplace($SE_CP_MarkUP,'%ID%',@ID)" disable-output-escaping="yes"/>
<!-- output the content here -->
</div>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
344 次 |
最近记录: |