Drupal 7 - 为什么我的动作没有出现在触发器菜单中?

时间:2012-02-23 14:25:36

标签: php drupal drupal-7 drupal-modules

我在userbeep_action_info()挂钩中添加了第二个元素,我打算将其添加到新操作中,但是当我在“触发器”页面中检查它时,它不会出现。第一项userbeep_beep_action显示,但不是第二项。为什么是这样?是因为它是可配置的,它需要额外的信息才能出现?我的书要求我检查它在这个阶段的存在,但它没有出现。

<?php

/**
 * @file
 * Writes to the log every time a user logs in or edits a node.
 */

/**
 * Implementation of hook_action_info().
 */
function userbeep_action_info() {
    return array(
        'userbeep_beep_action' => array(
            'type' => 'system',
            'label' => t('Beep annoyingly'),
            'configurable' => FALSE,
            'triggers' => array('node_view', 'node_insert', 'node_update', 'node_delete')
        ),
        'userbeep_multiple_beep_action' => array(
            'type' => 'system',
            'label' => t('Beep multiple times'),
            'configurable' => TRUE,
            'triggers' => array('node_view', 'node_insert', 'node_update', 'node_delete')
        )
    );
}

/**
 * Simulate a beep. A Drupal action.
 */
function userbeep_beep_action() {
    watchdog('beep', 'Beep! at ' . '');
}

2 个答案:

答案 0 :(得分:3)

从Book的错误更正网站 - http://www.drupalbook.com/errata3

  

错误:图3.4中的屏幕截图是错误的叠加层。 (什么是   如果是高级实例,则图3.4中所示的内容不可用   已经按照第43-44页和图3.5所述创建了行动。)

     

更正:图3.4中应显示的是叠加层   通过单击顶部菜单中的“配置”链接进行访问   单击Configuration页面中的Actions链接,最后   滚动到叠加层底部的“创建高级”   操作“下拉选择框。

你假设你的代码不正常的数字不是正确的。完成本章的其余部分,你就可以了。使用上面的资源来查找书中的更多错误。

提示:有很多......

答案 1 :(得分:0)

它没有显示,因为高级(可配置)操作需要在代码中定义时创建和配置:/admin/config/system/actions,其中简单操作不需要。它也可能还需要首先定义配置表单和操作。