Display taxonomy terms differently by content type
Since vocabularies are linked to nodes via fields you'd be best off handling this in hook_preprocess_node() in your theme file:

function MYTHEME_preprocess_node(&amp;$vars) {
  $node = $vars['node'];

  // Only make the change if this is a certain node type
  if ($node-&gt;type == 'my_type') {
    // Extract the term IDs from the field
    $tids = array();
    foreach ($node-&gt;field_vocab[$node-&gt;language] as $value) { 
      $tids[] = $value['tid'];
    }

    // This example adds the taxonomy terms to a simple list, you'll
    // want to replace this with whatever theme function you need
    $items = array();
    foreach (taxonomy_term_load_multiple($tids) as $term) {
      $items[] = l($term-&gt;name, "taxonomy/term/$term-&gt;tid");
    }

    // Replace field_vocab in the vars with the new content
    $vars['field_vocab'] = theme('item_list', array('items' =&gt; $items));
  }
}


That might need to be changed/added to depending on your needs but it should give you a place to start from. Once you've added the new hook to the template.php file make sure you clear Drupal's hooks so the registry will be updated.