Alter main menu button text and URL path depending on OG Role I know you can change menu links depending on drupal based roles (authenticated, non authenticated...) and by using Rules module also.

I am using Organic Group roles and I am having difficulties in showing different links on the menu bar depending whether my site's user IS or ISN'T a member of a group.

When he/she signs up a 'join' button is on the nav bar --> after joining a group he can now write content so the 'add' button replaces the join button on the nav bar with the appropriate URL paths.

Can a hook be used to do this?
You can do this using the access callback of the items array in hook_menu_alter. The implementation of the user menu gives a good example.
To make it work with Organic groups, you could declare an access callback function using og_is_member or og_user_access:

function MY_MODULE_menu_alter(&amp;$items) {
  $items['MY/PATH'] = array(
    'access callback' =&gt; 'MY_MODULE_custom_menu_access_callback',
    // Assuming your group is a node and the menu appears on the nodes
    // page (/node/[nid]), then array(1) would pass the node ID to your
    // function, which in this case acts as a group ID.
    'access arguments' =&gt; array(1),
    // etc...
  );
    return $items;
}
function MY_MODULE_custom_menu_access_callback($gid) {
  return og_is_member('node', $gid);
}


Where MY/PATH would be the path to the entity type representing the group. If you are using a node as a group, this would be node/%. As 'access arguments' we use the arg function. 0 would be node and 1 would be the node ID of the node.