我正在尝试使用rules模块让用户拥有一个依赖于有机组值列表的角色。我无法使用数据比较字段,因为这似乎只是比较确切的列表值。例如,如果我的数据中的数字1,2,3,4比较,但我的有机组列表中有1,2,3,4,5个值,则无法分配该角色。我没有其他选择。
我的问题是:如何根据有机组列表中的值,使用“规则”模块将用户分配到Drupal 7中的角色?
感谢您提供的帮助。
答案 0 :(得分:0)
我认为你必须创建自己的规则条件。使用自定义模块非常简单。
首先,您必须实现hook_rules_condition_info(有关详细信息,请参阅hook_rules_condition_info。)
function mymodule_rules_condition_info() {
return array(
'mymodule_og_condition_compare' => array(
'label' => t('Textual comparison'),
'parameter' => array(
'text1' => array(
'label' => t('Text 1'),
'type' => 'text',
),
'text2' => array(
'label' => t('Text 2'),
'type' => 'text',
),
),
'group' => t('Rules'),
),
);
然后你必须创建一个自定义函数,比较你的值并返回TRUE或者FALSE。
function mymodule_og_condition_compare($node, $node_unchanged){
//Compare values an return TRUE or FALSE
}