0

在从 ADMIN 保存之前,我需要操作内容类型(人)。

我需要在标题中保存姓名+姓氏

我知道应该使用presave 函数(hook_node_presave或)。hook_entity_presave

我的问题是这些函数应该写在哪里?

我在主题/自定义/MYPROJECT/MYPROJECT.theme 中编写它们,但它们不运行

为 ADMIN 编写的预设函数在哪里而不是普通函数?

4

1 回答 1

1

您可以将您的钩子放在模块的 .module 文件中。您应该为此创建一个自定义模块,示例如下:

modules/custom创建一个{PROJECT_NAME}_general现在称为 MODULE_NAME 的新文件夹)并添加 2 个文件:{MODULE_NAME}.info.yml{MODULE_NAME}.module

在 .info.yml 文件中,您只需放置一些有关您的自定义模块的信息,例如:

name: Name of your module
type: module
description: Description of your custom module
core: 8.x
package: Custom

现在您可以使用 drush ( drush en MODULE_NAME -y) 或使用管理菜单中的“扩展”来启用您的模块。

最后将您的钩子添加到 .module 文件并编写所需的代码。

您还可以在此处此处找到所有这些信息

希望这可以帮助你!

于 2017-06-14T13:20:49.320 回答