Taxonomy based filtering returns results across ALL revisions, not just the current revision. This isn't expected behavior, IMHO. One does a search for nodes matching a term and has results that don't make sense when one views the node content. But it becomes clear when looking back at old versions of that node that USE to have the terms for which one search for in the first place.
This is very similar to what is happening in the normal Drupal 6.22 core Content search feature, as reported here:
Going off of the above thread, I believe that _cmf_category_query_build() needs to look at vid's not nid's for it's table join, in order to fix this. I'm not well versed in making patches but what I'm experimenting with is:
Line 704 is:
'join' => "INNER JOIN {term_node} $table ON n.nid = $table.nid ",
Line 704 becomes:
'join' => "INNER JOIN {term_node} $table ON n.vid = $table.vid ",
| Comment | File | Size | Author |
|---|---|---|---|
| #1 | taxonomy_filter_by_current_revision_only-1211950-1.patch | 773 bytes | Henrik Opel |
Comments
Comment #1
Henrik Opel commentedI can confirm this bug. I also reviewed and tested jschrabs proposed fix as working and rolled it into the attached patch.