While working on a tremendously large Drupal 7 project, I found myself needing to convert Taxonomy tid’s to full URLs. The easiest solution was to just print out the value of the field after the taxonomy path url, like this:
/taxonomy/term/$tid
A problem with this is that it’s not following the alias naming conventions that you may have setup for your site. In my case, I had hundreds of taxonomy terms that were setup with specific URLs.
Luckily, Drupal has it’s own function to link the terms to their alias URLs.
$url = drupal_lookup_path('alias', 'taxonomy/term/'. $known_tid);
So in my case, I was able to write a foreach statement to cycle through all of my terms that have been referenced through an entity reference field.
foreach ($node->field_related_issues['und'] as $val) { $tid = $val['taxonomy_term']->tid; $url = drupal_lookup_path('alias', 'taxonomy/term/'. $tid); echo '<li><a href="/' . $url . '">' . $val['taxonomy_term']->name . '</a></li>'; }