diff --git a/modules/taxonomy/taxonomy.pages.inc b/modules/taxonomy/taxonomy.pages.inc
index 25cf642..54c3d84 100644
--- a/modules/taxonomy/taxonomy.pages.inc
+++ b/modules/taxonomy/taxonomy.pages.inc
@@ -21,6 +21,9 @@ function taxonomy_term_page($term) {
   // @todo This overrides any other possible breadcrumb and is a pure hard-coded
   //   presumption. Make this behavior configurable per vocabulary or term.
   $breadcrumb = array();
+  // Allow modules to make their own additions to the term.
+  module_invoke_all('entity_view', $term, 'taxonomy_term', 'full', $GLOBALS['language_content']->language);
+  
   while ($parents = taxonomy_get_parents($current->tid)) {
     $current = array_shift($parents);
     $breadcrumb[] = l($current->name, 'taxonomy/term/' . $current->tid);
@@ -31,8 +34,8 @@ function taxonomy_term_page($term) {
   drupal_add_feed('taxonomy/term/' . $term->tid . '/feed', 'RSS - ' . $term->name);
 
   $build = array();
-  // Add term heading if the term has a description
-  if (!empty($term->description)) {
+  // Add term heading if the term has a description or modules have added content
+  if (!empty($term->description) || !empty($term->content)) {
     $build['term_heading'] = array(
       '#prefix' => '<div class="term-listing-heading">',
       '#suffix' => '</div>',
