为模块之间的共享功能构建drupal 8自定义类(用于drupal的php类的共享库)

时间:2017-11-13 03:43:32

标签: php drupal drupal-8

背景:
我在Drupal 7中构建了多个自定义模块,它们使用基本集合中的共享类。最初我将基本集合设计为具有空表单(永远不会显示)的单个模块,并且每个表单模块引用该共享基本模块中所需的类和相关的成员方法。我正在考虑将模块升级到Drupal 8,我想知道是否有更合理的方法来实现所需的"共享"模块,而不是使用不包含表单的表单模块。

问题:
是否可以在drupal 8中创建自定义模块可以引用的共享库(类)?

说明问题:
有一个"类别经理"允许用户管理文档集合的类别的模块。该类别管理器实现了一个类,该类提供用于添加/更新/删除/获取类别数据的成员方法。还有一个"文件管理员"允许以相同方式管理文档的模块。由于文档与类别相关联,因此文档管理器模块引用相同的"类别"类。显然,这个"类别" class在基本模块中定义(两个管理器模块都引用)。还有其他几个共享类的例子。

1 个答案:

答案 0 :(得分:0)

我认为你可以在这里使用两种方法。

我建议将您的共享库打包为作曲家依赖项并将其包含在您的Drupal中,下面是一个包含更多相关信息的链接

https://www.drupal.org/node/2514612

第二种方法是创建并启用具有所有共享功能的模块

Drupal 8 PSR-4,只要你按照它,你的活动模块的类将可用于其他,这里是更多的信息

https://www.drupal.org/docs/develop/coding-standards/psr-4-namespaces-and-autoloading-in-drupal-8