我有两个drupal 7网站,我希望他们分享某种内容类型的内容。我希望将此内容存储在外部数据库中。我怎么能用自定义模块实现这一点?
答案 0 :(得分:1)
您可以设置Rest服务器。 然后,您可以使用视图来共享所需的信息。
答案 1 :(得分:1)
答案 2 :(得分:0)
Drupal站点上的内容(即节点)不存储在单个表中。相同的表用于存储不同内容类型的内容。将字段添加到内容类型或更改其设置时,会动态创建某些表。因此,您不能通过简单地共享用于存储它们的表来共享两个站点之间的某些内容。
根据经验,只需在数据库级别执行操作,就无法在Drupal中实现任何复杂的操作。 (PHP)代码中实现的存储逻辑太多,在访问数据库时无法忽略。您应始终将解决方案基于Drupal的API(大多数情况下,不是数据库层API,而是高级API,如Node和Fields API)。
也就是说,站点之间没有核心API进行通信。我会使用其中一个站点作为共享内容的规范来源,以及可以编辑它们的唯一站点。然后以某种方式在第二个站点上复制这些内容。这可以通过第二个站点上的Services或RESTful Web Services模块以及第一个站点上的自定义模块来完成,该模块用于通过REST服务将新内容和更新的内容推送到第二个站点。 / p>