【问题标题】:Where to place presave functions?在哪里放置预存功能?
【发布时间】:2017-06-13 11:06:52
【问题描述】:

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

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

我知道应该使用预保存函数(hook_node_presavehook_entity_presave)。

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

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

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

【问题讨论】:

    标签: drupal-8 drupal-nodes drupal-preprocess


    【解决方案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 文件中并编写所需的代码。

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

    希望对你有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-27
      • 2020-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-22
      相关资源
      最近更新 更多