预测动态占位符的占位符
Predicting the placeholder for a dynamic placeholder
我正在使用 Fortis 中的动态占位符,但需要设置一个页面模板,其中动态占位符包含渲染。我通过在页面模板的标准值上设置布局细节来设置页面模板。
我一直未能成功,因为动态占位符由生成的 GUID 后缀。有没有办法预测这个 GUID?根据文档,GUID 是使用以下逻辑生成的:
Dynamic Placeholders simply use the rendering ID to create a unique placeholder name. If more than one dynamic placeholder with the same name is in a rendering it will also append on an incrementing number
我尝试了另一种方法,使用自制的动态占位符库,它只是在动态占位符前面加上一个序列号,例如第 1 行,第 2 行,第 3 行。但是这种方法使得内容编辑器无法在体验编辑器中移动行,因为行内的内容绑定到一个固定的数字,移动行时该数字会发生变化。
由于这个问题已经在 sitecore.stackexchange.com 上得到了回答,我也想把答案也放在这里。非常感谢 Richard Seal and Thomas D。
托马斯·D:
可以尝试用体验编辑器打开标准值项,添加自己喜欢的效果图
理查德·海尔:
这是 Thomas D.
提到的方法的替代方法
Fortis 解决方案将 UID 用于附加到您输入的占位符键的呈现。您可以通过更改为“原始值”视图并将 xml 从渲染或最终渲染字段中复制出来来实现。
找到包含您的占位符的渲染。会有一个像这样的 xml 元素:
<r id="{CA76EB6F-2934-4B8A-BB6A-508A8E44A7C5}"
ph="body"
uid="{0FD41EBD-43CF-4647-8A0F-F1F1D2E00CCD}" />
可能还有其他字段。重要的 2 个是 id,它是您渲染项目的项目 id 和 uid,这是添加到您的占位符键的唯一渲染 id。
密钥是这样构建的:string.Format("{0}_{1}", placeholderName, renderingId);
因此,如果您有一个名为 title 的占位符键,上述 xml 片段的键将是:title_{0FD41EBD-43CF-4647-8A0F-F1F1D2E00CCD}
我正在使用 Fortis 中的动态占位符,但需要设置一个页面模板,其中动态占位符包含渲染。我通过在页面模板的标准值上设置布局细节来设置页面模板。
我一直未能成功,因为动态占位符由生成的 GUID 后缀。有没有办法预测这个 GUID?根据文档,GUID 是使用以下逻辑生成的:
Dynamic Placeholders simply use the rendering ID to create a unique placeholder name. If more than one dynamic placeholder with the same name is in a rendering it will also append on an incrementing number
我尝试了另一种方法,使用自制的动态占位符库,它只是在动态占位符前面加上一个序列号,例如第 1 行,第 2 行,第 3 行。但是这种方法使得内容编辑器无法在体验编辑器中移动行,因为行内的内容绑定到一个固定的数字,移动行时该数字会发生变化。
由于这个问题已经在 sitecore.stackexchange.com 上得到了回答,我也想把答案也放在这里。非常感谢 Richard Seal and Thomas D。
托马斯·D: 可以尝试用体验编辑器打开标准值项,添加自己喜欢的效果图
理查德·海尔: 这是 Thomas D.
提到的方法的替代方法Fortis 解决方案将 UID 用于附加到您输入的占位符键的呈现。您可以通过更改为“原始值”视图并将 xml 从渲染或最终渲染字段中复制出来来实现。
找到包含您的占位符的渲染。会有一个像这样的 xml 元素:
<r id="{CA76EB6F-2934-4B8A-BB6A-508A8E44A7C5}"
ph="body"
uid="{0FD41EBD-43CF-4647-8A0F-F1F1D2E00CCD}" />
可能还有其他字段。重要的 2 个是 id,它是您渲染项目的项目 id 和 uid,这是添加到您的占位符键的唯一渲染 id。
密钥是这样构建的:string.Format("{0}_{1}", placeholderName, renderingId);
因此,如果您有一个名为 title 的占位符键,上述 xml 片段的键将是:title_{0FD41EBD-43CF-4647-8A0F-F1F1D2E00CCD}