Как добавить пользовательские правила "действия" в Drupal?

Я использую модуль Правила в Drupal 7, и я попытался добавить новое правило "Действие"

Я выполнил шаги, описанные в разделе Как создать собственное действие правила, используя hook_rules_action_info? создать собственное действие правила, используя hook_rules_action_info:

  • Я пытался создать образец файла (save_nid.rules.inc) в папке /rules/module/,
  • И я также пытался создать module папка в /site/all/module/save_nid/,

Мой код в save_nid.rules.inc выглядит так:

  function rules_save_nid_action_info() {
      return array(
      'save_nid_action' => array(
        'label' => t('Custom Action'),
        'parameter' => array(
          'param1' => array(
            'type' => 'int',
            'label' => t('Parameter Label'),
          ),
          'param2' => array(
            'type' => 'commerce_order',
            'label' => t('Parameter Label2'),
          ),
        ),
        'configurable' => FALSE,
        'group' => t('ABC Custom module action'),
        'callbacks' => array(
          'execute' => 'abc_custom_action',
        ),
      ),
  }

После того, как я очистил кеш Drupal, я не увидел своего "пользовательского правила" в списке.

Что я пропускаю или делаю неправильно?

1 ответ

В вашем случае имя компьютера вашего пользовательского модуля выглядит так: save_nid,

Так что если вы хотите использовать hook_rules_action_info в вашем модуле ваша функция должна быть названа save_nid_rules_action_info, вместо rules_save_nid_action_info,

Не уверен, что это "единственная" проблема, почему вы не можете заставить ее работать, но, по крайней мере, это "проблема", которую вам нужно решить.

PS: не забудьте сохранить эту пользовательскую кодировку в папке вашего пользовательского модуля (в /site/all/module/save_nid/).

Другие вопросы по тегам