Unable to override theme function I am trying to override the 'link_field' theme function in the Link module. I've put this function in my template.php of my active theme and have cleared the cache, but its not overriding. What am I doing wrong?

 function tma_corp_link_field($vars) {
  dpm($vars);
  drupal_add_css(drupal_get_path('module', 'link') . '/link.css');
  $element = $vars['element'];
  // Prefix single value link fields with the name of the field.
  if (empty($element['#field']['multiple'])) {
    if (isset($element['url']) &amp;&amp; !isset($element['title'])) {
      $element['url']['#title_display'] = 'invisible';
    }
  }

  $output = '';
  $output .= '&lt;div class="link-field-subrow clearfix"&gt;';
  if (isset($element['title'])) {
    $output .= '&lt;div class="link-field-title link-field-column"&gt;' .      drupal_render($element['title']) . '&lt;/div&gt;';
  }
  $output .= '&lt;div class="link-field-url' . (isset($element['title']) ? ' link-field-column' : '') . '"&gt;' . drupal_render($element['url']) . '&lt;/div&gt;';
  $output .= '&lt;/div&gt;';
  if (!empty($element['attributes']['target'])) {
    $output .= '&lt;div class="link-attributes"&gt;' . drupal_render($element['attributes']['target']) . '&lt;/div&gt;';
  }
  if (!empty($element['attributes']['title'])) {
   $output .= '&lt;div class="link-attributes"&gt;' . drupal_render($element['attributes']['title']) . '&lt;/div&gt;';
  }
  if (!empty($element['attributes']['class'])) {
   $output .= '&lt;div class="link-attributes"&gt;' . drupal_render($element['attributes']['class']) . '&lt;/div&gt;';
  }
  dpm($element);
  return $output; 
 }
So to help keep your theme files cleaner, the preference is to place theme overrides in a custom module. This allows you to switch themes without having copy, paste, and rename a bunch of code.

Also this may be your only choice if, for example, you're trying to override a theme function that's being called from an admin page, you have an admin theme enabled, and you don't want to bother with creating a subtheme for your admin theme.

The workaround here is to use hook_theme_registry_alter(); see this page on Drupal Stack Exchange.