Как вызвать действие из другого плагина после вызова другого действия из другого плагина

У меня есть два плагина: plugin_A и plugin_B. В plugin_A/actions/plugin_A/ есть действие a_action.php. В plugin_B/actions/plugin_B/ есть действие b_action.php.

plugin_A / start.php

elgg_register_action("a_action", __DIR__ . "/actions/plugin_A/a_action.php");

plugin_B / start.php

elgg_register_action("b_action", __DIR__ . "/actions/plugin_B/b_action.php");

Я хотел бы, чтобы b_action вызывался после каждого вызова a_action.

Как я могу пойти по этому поводу.

Спасибо всем заранее.

2 ответа

Решение

Для этого вы просто вызываете функцию elgg с именем action в конце a_action.php

action('b_action');

Я выбрал крючки для плагинов:

elgg_register_plugin_hook_handler("action", "a_action", "pay_action_hook");

function pay_action_hook($hook, $entity_type, $returnvalue, $params) {
    if (/* My stuff works OK */) {
        return true;
    }

    register_error(elgg_echo('My stuff work out failed'));

    return false;
}
Другие вопросы по тегам