drupalorganic-groupsdrupal-nodes

drupal programmatically disable or remove node create node link(s)


In the context of organic groups, I am writing a module which will stop users who are not members of a group from adding group posts into that group.

My module currently sets the permissions necessary and detects whether a user has the permission.

So when a user(s) are looking at a group page, I want to disable/remove the standard link to create group posts.


Solution

  • Try this method.

    function mymodule_menu_alter(&$items) {
        global $user;
        // Perform code for finding out users permissions.
        // lets suppose we set true or false to $restricted after all
        if ($restricted && isset($items['node/add/yourtype'])) {
            $items['node/add/yourtype']['access arguments'] = FALSE;
            // or unset($items['node/add/yourtype']) to remove item for user
        }
    }