在Kentico 11中,您正在开发的自定义模块中,当为UI元素使用自定义页面模板(门户模式)时,该模板的Web部件使用的合适的转换位置在哪里? “适当”是指转换可以与模块捆绑在一起进行导入/导出操作,或者至少可以在Kentico admin中按逻辑分组吗?
Kentico自定义模块应用程序不包含其类的“转换”选项卡。 当查找转换时,UI页面模板上使用的Repeater Web部件仅列出“自定义表”和“页面类型”。自定义类似乎不支持转换。
我可以创建一个独立的容器页面类型来承载模块的所有转换,但是这将在模块外部。这些转换将使用模块中的类中的数据(例如,通过转发器Web部件和查询数据源)。将它们放在外面似乎很奇怪,所以我对此表示怀疑。
到目前为止,我只使用了现成的选项卡并列出了Web部件来创建自定义模块。现在,我需要进行更多的自定义,并且希望使用门户网站模式来使用Web部件轻松构建模板。转换似乎是此开发流程中缺少的考虑因素。
我也找不到“自定义模块”文档中提到的“转换”。我参考的Kentico文档是:
我可以找到放置变换的地方。我正在寻找关于将其放置在最佳位置并将其与我的自定义模块工作捆绑在一起的想法。
答案 0 :(得分:1)
您的发现是模块文档中的一个缺点。该文档详细讨论了如何构建模块并在Kentico UI中显示该模块,但是却很少讨论如何在面向公众的网站上在Kentico之外显示该内容。
您提到的,使用自定义页面类型作为容器是一种简单的简便方法,我相信您可以将其与模块捆绑在一起。是的,这没有任何意义,但是使用此方法将使您能够进行自定义查询,以访问模块数据和显示选项(转换)。
您还可以为此选择创建自定义Webpart并将其打包到模块中,但是我建议您这样做,因为它脱离了Kentico的基本用法,并且需要代码维护和修改才能进行简单的更改。
答案 1 :(得分:1)
如果查看页面类型,您将看到Kentico进行了自定义页面类型来保存转换。他们有RSS转换,电子商务转换等。
这也是我一直都这样做的方式。
答案 2 :(得分:0)
我建议您以自定义表模块为例,即它的用户界面部分:在编辑 custom下有 transformation 菜单项界面中的表格。看一下它是如何完成的,并尝试为您自己的自定义模块克隆/修改它。如果您检查数据库:cms_transformation表具有 TransformationClassID 字段。因此,转换可以附加到类上-因此您的自定义类可以附加转换。老实说我从来没有做过,但这就是我要采取的方式。我会把苹果和苹果,桔子和橙子放在一起……是的,您可以始终创建“容器页面类型”,它会起作用,但是我会使用自定义模块。在这种情况下,您可能需要创建和扩展。
答案 3 :(得分:-2)
@John,
根据Brenden的帖子,您可以使用具有自定义逻辑的自定义Web部件来实现此目的。
请参考以下网址:
https://docs.kentico.com/k10/developing-websites/defining-website-content-structure