Chcę użyć interfejsu użytkownika reguł do zdefiniowania niektórych zestawów akcji, ale chcę je wykonać programowo z niestandardowego modułu.
Jak wykonać akcję kodem i przekazać potrzebne argumenty (w tym przypadku tylko węzeł).
Dzięki!
Jeśli skonfigurowałeś go jako komponent reguł, możesz użyć rules_invoke_component
alternatywnie możesz wywołać zdarzenie, które może wywołać wiele reguł za pomocą rules_invoke_event
.
Oba są podobne pod tym względem, że przekazujesz najpierw imię / id, a reszta argumentów jest przekazywana, więc coś w tym rodzaju
rules_invoke_component('name', $node);
jeśli reguła komponentu niestandardowego ma kilka parametrów, przekaż je jeden po drugim i oddziel je przecinkiem jako przykładem
rules_invoke_component('rules_save_search_send_activation_sms', 'paramval1', 'paramval2', ....);
jest właściwie, jak musisz to zrobić. To znowu zależy od sposobu zdefiniowania i skonfigurowania reguły / komponentu.
rules_invoke_component('rules_mycomponent', $node);
rules_invoke_event
istnieje w 6rules_invoke_component
, nie, ale nie wierzę, że reguły w 6 mają pojęcie komponentów.rules_invoke_component('rules_save_search_send_activation_sms', 'test ', '93333333333');