在我的网站上,我将两种内容类型设置为有机组节点。
网站上还有其他各种内容类型,设置为标准组帖子。允许用户将内容发布到组中,然后组引用该组。
然后我启用了“组详细信息”块以在每个组上显示,然后显示创建内容链接到每个内容类型=标准组帖子。
我想做什么,无论是使用该块还是我创建自己的块,都是将某些内容类型创建链接限制为某些组。 i.o.w我不想允许在体育组中创建某些内容类型。我认为这可以通过自定义菜单或块来完成,但不确定所需的PHP。
答案 0 :(得分:1)
找到一种使用块创建手动菜单的方法。
按照下面的链接解释一切 - http://drupal.org/node/169126
以下是链接中的文字:
以下是我从这一切中汇总的内容....要从组页面创建链接以创建自动分配给该组的内容...... 下面的代码被放入一个格式设置为php
的块中<?php $group_title = og_get_group_context()->title; ?>
<h2>You are a member of the <?php print $group_title; ?> group </h2>
<?php $group_nid = og_get_group_context()->nid; ?>
<div class="user-input-link"><a href="http://your-site/node/add/your-content-type?gids[]=<?php print $group_nid; ?>">Post your own content-type into this group.</a>
</div>
它有效!
现在,您需要将其显示在组页面上,并且仅在用户是该组的成员时才显示。因此,在“show block”部分中,您可以将其放入并且似乎可以正常工作:
<?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 ($gid == 0) $in_og = FALSE;
}
return $in_og;