我们编写了很多站内模块,并注意到它们现在在SF 4+中与基于内容的模块完全不同。所以,就此而言,我有一些问题:
--- ---最终
如果我们真的想要这种标准化,我们是否必须采用其他模块类型?
4.是否存在允许我们访问非sitefinity数据的模块类型(即分离db
但也为我们提供与内容完全相同的功能和UI体验 -
基于模块?
答案 0 :(得分:0)
站点内部模块只是放置在后端页面中的自定义用户控件(ascx),用于将自定义功能添加到后端。为了复制网站其余部分的外观,我将HTML复制并粘贴到控件中。
我在此前做了一次网络研讨会,包括重新创建后端编辑器的代码。它似乎仍然有效,可在此处找到:http://www.sitefinity.com/blogs/joshmorales/posts/josh-morales-blog/2011/06/30/sitefinity_intra-site_module_webinar_notes
居中的视图有点不同,我没有那个html,但你可以做同样的事情(从另一个本地页面复制它)。我并不总是100%准确(我的控件通常与Sitefinity不同),但我足够接近它不会破坏用户体验。
可以使用javascript重新创建操作菜单,但是如果您正在寻找能够为您完成所有这些操作的NATIVE集成,那么您确实会考虑继承或更好:只需使用模块构建器,它可以构建自定义自动将自身安装到Sitefinity中的类型,就像它们是常规模块一样。
字段绝对设计为在本机sitefinity模块定义(使用Sitefinity上下文构成UI的类)的上下文中运行。这并不意味着您不能在模块中包含Sitefinity内容;它只是意味着如果你这样做,你将不得不使用API自己实现集成。
关于您的上一个问题,使用外部数据但仍然保留“Sitefinity Content”UI的唯一方法是从Content继承,然后创建一个自定义提供程序,从数据库读取并将其转换为Sitefinity内容类型。这当然是可能的,但这是一个非常大的项目。
除非您完全需要这种紧密集成,否则我建议您只需通过API进入站内,链接到Sitefinity内容类型,分类等,并单独管理。
我希望这有用!