我有一个在Drupal 6中构建的站点,它需要一些只对某些角色或特定页面可见的块。通常,我会使用块配置设置来控制页面和角色可见性。但是我最近遇到了context module,它有效地将网站拆分为相关属性的“部分”或“组”。
我的问题是:何时从上下文而不是块配置设置控制块可见性是否合适?我应该只使用其中一个还是两者兼而有之?
答案 0 :(得分:2)
这些是针对不同用例的不同方法,但它们并不相互排斥。
上下文确实将网站划分为不同的上下文(并且还存在上下文类型的可能性)。这实际上是它的用例:基于上下文的块显示/定位。
但是上下文不会检查用户角色或多语言设置(i18n)。 block支持这些情况(您可以结合使用context和block来根据用户角色在上下文中显示内容)。
块还允许用户选择是否要查看该框。
我的最终答案是:结合而不是选择。
答案 1 :(得分:1)
何时使用核心块放置以及何时使用上下文没有硬性规定。一般来说,如果你有很多块,具有不同和复杂的可见性逻辑,上下文将使事情更易于管理。此外,可以将上下文导出到代码,这样可以更轻松地跟踪版本控制中的块配置。在代码中存储上下文时,这还允许通过简单地更新代码来更改块到生产站点,而不需要通过UI登录和手动移动。