Currently, the translation.module 'integrates' the translation links into $links:

Line 153+ from translation.module: http://api.drupal.org/api/function/translation_link/6

function translation_link($type, $node = NULL, $teaser = FALSE) {
  $links = array();
  if ($type == 'node' && ($node->tnid) && $translations = translation_node_get_translations($node->tnid)) {
    // Do not show link to the same node.
    unset($translations[$node->language]);
    $languages = language_list();
    foreach ($languages as $langcode => $language) {
      if (isset($translations[$langcode])) {
        $links["node_translation_$langcode"] = array(
          'title' => $language->native,
          'href' => 'node/'. $translations[$langcode]->nid,
          'language' => $language,
          'attributes' => array('title' => $translations[$langcode]->title, 'class' => 'translation-link')
        );
      }
    }
  }
  return $links;
}

Line 332+ from translation.module: http://api.drupal.org/api/function/translation_translation_link_alter/6

/**
 * Implementation of hook_translation_link_alter().
 *
 * Replaces links with pointers to translated versions of the content.
 */
function translation_translation_link_alter(&$links, $path) {
  if ($paths = translation_path_get_translations($path)) {
    foreach ($links as $langcode => $link) {
      if (isset($paths[$langcode])) {
        // Translation in a different node.
        $links[$langcode]['href'] = $paths[$langcode];
      }
      else {
        // No translation in this language, or no permission to view.
        unset($links[$langcode]);
      }
    }
  }
}

This 'integration' disables themes to move those translation links (on its own/ separately) to another position/ location of webpages. For example:

Lines 27 in themes\garland\node.tpl.php

    <?php if ($links): ?>
      <div class="links"><?php print $links; ?></div>
    <?php endif; ?>

This request was first requested here, though for another module: http://groups.drupal.org/node/10143#comment-183523

Comments

cesar.brod@gmail.com’s picture

Subscribing for D7. At least it seems it is still not possible to work the translation links positioning in an easy way... If so, I will be glad with any pointer!

mdupont’s picture

Category: Feature request » Support request
Issue summary: View changes
Status: Active » Closed (works as designed)

These contextual links for a node are stored in $node->link, it makes perfect sense to have the translation links among them. However if you need to split the translation links out in a separate region of a theme, you can do it in a THEME_preprocess_node() function in the template.php file of your theme.