hook_menu_alter with Organic Groups
This is how I solved a similar problem with the hook_menu() and the use of 'title callback' and 'page callback'

function YOUR_MODULE_menu() {
    $items = array();

    $items['link'] = array(
        'title' =&gt; 'test',
        'description' =&gt; t('Just a test'),
        'title callback' =&gt; 'change_title_link',
        'title arguments' =&gt; array(1),
        'page callback' =&gt; 'go_to_place',
        'page arguments' =&gt; array(1),
        'access callback' =&gt; 'user_is_logged_in',
        'expanded' =&gt; TRUE,
        'weight' =&gt; 100,
        'menu_name' =&gt; 'main-menu',
        'options' =&gt; array('attributes' =&gt; array('class' =&gt; array('perfil-usuario'))),
        ); 

    return $items;
}


In this function you can change the link title 

function change_title_link($gid) {
  if(og_is_member('node', $gid)) {
    return 'Post';
  }
  else {
    return 'Register';  
  }
}


Here you can redirect to the desire url

function go_to_place($gid) {
  if(og_is_member('node', $gid)) {
    drupal_goto('/someplace/post');
  }
  else {
    drupal_goto('/someplace/register');
  }
}