首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以调用SiteEdit可编辑的内容脚本来使用RenderComponentPresentation方法从TBB输出内容?

是否可以调用SiteEdit可编辑的内容脚本来使用RenderComponentPresentation方法从TBB输出内容?
EN

Stack Overflow用户
提问于 2012-10-04 17:34:32
回答 2查看 169关注 0票数 2

是否可以调用SiteEdit可编辑的内容脚本来使用RenderComponentPresentation方法从TBB输出内容?

目前,我正在得到一个红色边框包装的内容。当我翻过右上角图标时,它的意思是“删除”。但是,组件内容未被删除,组件模板或页面的任何更改都已被重新发布,组件本身也不是动态组件。

如果我直接从TBB调用可编辑脚本,但是如果我使用SiteEdit方法调用另一个组件模板来输出该脚本,则RenderComponentPresentation正在工作。我只得到红色边界线,并说它已被移除。

可编辑脚本:(直接从TBB工作)

代码语言:javascript
复制
<!-- TemplateBeginIf cond="Content != ''" -->
<tcdl:ComponentField name="Content">${Content}</tcdl:ComponentField>
<!-- TemplateEndIf -->

在TBB中调用以下方法,并始终获得红色边框RenderComponentPresentation(ComponentID, ComponentTemplateID)

Environment:Tridion 2011,SiteEdit 2009 SP3,Windows 2008

EN

回答 2

Stack Overflow用户

发布于 2012-10-04 19:20:31

我想这在RenderComponentPresentation中是不可行的,因为您要做的是嵌套组件演示文稿。但是,您可以通过将siteedit标记与IsQueryBased直接添加到true来实现这一点。

请查看该链接以获得更多信息(本节底部):0D0C929C17D74A6292B2AFE0C29F4DCD

另一种方法是在嵌套组件表示之前添加以下标记(IsQueryBased应为真):

代码语言:javascript
复制
<!-- Start SiteEdit Component Presentation: {
  "ID" : "MyCP23", "ComponentID" : "tcm:54-7894",
  "ComponentTemplateID" : "tcm:54-3201-32",
  "ComponentVersion" : 2,
  "IsQueryBased" : true,
  "SwapLabel" : "Left"
} -->
票数 1
EN

Stack Overflow用户

发布于 2012-10-05 13:44:22

如果您正在呈现一个不在当前页面上的组件,那么SiteEdit会考虑删除它。

您需要将组件表示标记为“基于查询的”,这样SiteEdit就不会在页面上期待它了。这将禁用没有意义的功能(例如拖放以在页面上移动CP ),但在其他情况下将同样工作。

要将其标记为基于查询的,您需要手动输出标记(请参阅启动SiteEdit组件表示命令),或者使用其他工具为您做标记,比如函数由Frank van Puffelen创作 (注意:,我认为这些只适用于2011年版本)。确保将IsQueryBased参数设置为true

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12732637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档