use*_*016 6 tridion tridion-2011
我正在尝试设计一个组件模板,使作者能够对作为关联模式一部分的所有字段执行内联编辑.如果相关模板显示关联模式中的所有字段,这将是直截了当的.
可能最好我用一个例子来解释自己.该网站有一个新闻栏目,为了这个例子,让我们说新闻文章架构有标题,摘要,正文和日期.我希望用户能够通过Tridion UI在一个地方编辑所有这些字段,并且这个编辑发生的最明智的地方似乎在新闻详细信息模板中.问题是,新闻详细信息模板需要显示标题,日期和正文,但不应显示摘要.因此,我希望用户能够在编辑组件时查看/编辑摘要字段,但不能在任何其他时间在模板上显示摘要.
我从Tridion UI文档中看到,可以启用空白/非模板字段的内联编辑,如下所示:
<tcdl:ComponentField name="Summary"></tcdl:ComponentField>
Run Code Online (Sandbox Code Playgroud)
这样可以正常工作,直到用户开始编辑组件时才显示任何内容,此时显示值"添加文本"代替上面的代码.功能上这很好,因为它实现了我的要求.我遇到的问题是用户不友好,因为没有标签可以向用户描述他们实际编辑的内容.在上面的示例中,问题显然不是那么糟糕,但实际上有更多类似于摘要的非模板字段,我希望用户能够在新闻详细信息页面上进行编辑,例如
<tcdl:ComponentField name="Summary"></tcdl:ComponentField>
<tcdl:ComponentField name="AnotherField1"></tcdl:ComponentField>
<tcdl:ComponentField name="AnotherField2"></tcdl:ComponentField>
Run Code Online (Sandbox Code Playgroud)
当用户开始编辑组件时,这会导致以下情况:
<add text>
<add text>
<add text>
Run Code Online (Sandbox Code Playgroud)
我尝试在tcdl:ComponentField标记中插入特定的渲染代码,但此布局会永久显示在暂存网站上,例如:
<tcdl:ComponentField name="Summary">Summary: @Fields.Summary</tcdl:ComponentField>
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以覆盖"添加文本"占位符内容,以便在编辑组件时显示类似于以下内容:
<Enter Summary>
<Enter Additional Field 1>
<Enter Additional Field 2>
Run Code Online (Sandbox Code Playgroud)
或者是否有更好/更简单的方法来实现我想要实现的目标?
谢谢
菲尔
无法轻易覆盖"添加文本"标签.但您可以在tcdl:ComponentField标记之前输出所需的标签.
例如:
<div>Summary: <tcdl:ComponentField name="Summary"></tcdl:ComponentField></div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
161 次 |
| 最近记录: |