How do I theme a blog listing page for a specific taxonomy term? I have a site, where a blog listing of a particular category, say Resources, has to have the "Read More" button say "Download Resource" instead.

I saw that this is controlled by a template file called 'node--blog-tpl.php' in the theme, with the following code:

    &lt;?php if($extended == '1'): ?&gt;
        &lt;a class="btn readmore" href="&lt;?php print $node_url; ?&gt;"&gt;&lt;?php print t('Read More');?&gt;&lt;/a&gt;
    &lt;?php endif; ?&gt;


Since I wanted to change this just for the 'Resources' category, which was Taxonomy Term 23 for me, I copied this file and renamed it all manner of combinations/permutations of filenames with 'taxonomy--term-23' in it, but nothing seems to work.

Can someone please help me with this? I would be very grateful.

Thanks in advance,
Jasper
Blog list pages render node teasers. I think that the automatic template suggestion patterns would only operate on node attributes and taxonomy is not one.

You can add this to your theme's template.php file

function THEME_preprocess_node(&amp;$variables) {
  // check for blog and teaser
  if ($variables['type'] == 'blog' &amp;&amp; $variables['view_mode'] == "teaser") {
     // check for taxonomy term on node
     dpm($variables);
     if ($variables['field_TAXONOMYFIELD'][LANGUAGE_NONE][0]['tid'] == TAXONOMYID) {
       // change the readmore link here or add code for template file
       $variables['content']['links']['node']['#links']['node-readmore']['title'] = "Custom Read Me";
     }
  }
}


If you don't want to override the readmore link inside the preprocess function but absolutely want a template file, then you can instead do this:

array_unshift($variables['theme_hook_suggestions'], "node__blog__blahblah");