我在块可见性设置中使用以下代码,仅在用户是成员时显示块,而不是管理员。
我可以添加什么来进一步将其过滤到有机组节点的类型。
i.o.w仅显示正在查看的当前组=有机组节点类型X
<?php
$in_og = FALSE;
if (module_exists('og')){
$in_og = FALSE;
$group_node = og_get_group_context();
$gid02 = $group_node->nid;
$gid = (int)$gid02;
if ($gid02 == null) $gid = 0;
if (og_is_group_member($group_node)) $in_og = TRUE;
if (og_is_group_admin($group_node)) $in_og = FALSE;
if ($gid == 0) $in_og = FALSE;
}
return $in_og;
感谢
答案 0 :(得分:2)
也许像“
<?php
$in_og = FALSE;
$right_group = FALSE;
if (module_exists('og')) {
// get OG $group_node
$group_node = og_get_group_context();
if ($group_node->type == 'type-x') {
// we have the correct group type
$right_group = TRUE;
}
$gid = $group_node->nid;
if (og_is_group_member($group_node)) {
// show to members
$in_og = TRUE;
}
if (og_is_group_admin($group_node)) {
// hide from admins
$in_og = FALSE;
}
}
return $in_og && $right_group;
?>