How can I change a menu link dynamically? (D7) I'm trying to change the link of a menu item dynamically based on the language that is selected in the language switcher.

Let's say I have the following links in my main-menu:
-Home
-About
-Products

If the language selected is English, I want the About item to link to node/73. If the language selected is Dutch, I want the About item to link to node/74.

Is this possible and how would I best go about this?

Any help is very much appreciated.

EDIT: Some extra information. I have the Internationalization, Content Translation and Entity Translation modules installed. Because of the hierarchy of the menu and a mix between content translated nodes and entity translated nodes, I don't want to add two seperate links to the menu but have one link and change the path dynamically in code.
You want to implement hook_translated_menu_link_alter().

This hook is not called for all menu items. According to the API documentation:


  It is only invoked if $item['options']['alter'] has been set to a
  non-empty value (e.g., TRUE). This flag should be set using
  hook_menu_link_alter().


Here's an example:

function MODULE_menu_link_alter(&amp;$link) {
  if ($link['link_title'] == 'foo') {
    $link['options']['alter'] = TRUE;
  }
}

function MODULE_translated_menu_link_alter(&amp;$link) {
  if ($link['link_title'] == 'foo') {
    $link['href'] = 'node/5';
  }
}


Some notes: 


you may want to filter additionally by $link['menu_name']
MODULE_menu_link_alter() is invoked on cache clear for all menus items declared via hook_menu().
For menu items created via web it is only invoked on save, that is, for this code to take effect you need to edit-and-save menu links you want to alter.


For reference, this technique is implemented by core in user.module (see user_menu_link_alter and user_translated_menu_link_alter) and by menu_token module.