[drupal-devel] [feature] Order taxonomy terms by vocabulary weight,
then term weight
grohk
drupal-devel at drupal.org
Sun May 8 07:16:59 UTC 2005
Issue status update for http://drupal.org/node/7684
Project: Drupal
Version: cvs
Component: taxonomy.module
Category: feature requests
Priority: normal
Assigned to: Anonymous
Reported by: MrRoot
Updated by: grohk
-Status: active
+Status: patch
Attachment: http://drupal.org/files/issues/taxonomy_vocab_weight.patch (901 bytes)
I have been looking for this funtionality for a long time, so I have
attempted to bring this patch up-to-date and clean it up as per the
suggestions.
grohk
Previous comments:
------------------------------------------------------------------------
May 10, 2004 - 21:33 : MrRoot
Attachment: http://drupal.org/files/issues/taxonomy.module_2.patch (866 bytes)
This is a trivial patch to the taxonomy_node_get_terms() function.
Currently, it was only sorting the results by term weight; the patch
joins in the vocabulary table and adds the vocabulary weight as a
second preference ordering.
I wrote this because I wanted to force ordering of vocabularies when
listing the taxonomies of a node using the taxonomy_link() function.
Basically, what I was doing was this: I created a "Story Type" vocab
which described the overall *type* of post ( News, Rant, Review, ... )
and a "Topic" vocab which described the *topic* of the post (
Programming, Math, Political, Family, ... ). Now, when you added a new
story, you picked a Story Type and a Topic. When the story is
displayed, it shows the taxonomy assignments as a list of links. The
ordering of that list was by term weight, term name. That meant that
if I wanted to control the left to right layout of that information,
I'd have to set the weight on every term in each vocabulary. That
seemed tedious, especially since the vocabularies themselves already
had a weight associated with them. Hence, I dug around for about 15
minutes and wrote this patch.
It's been tested and seems to work quite well. I can now *force* which
taxonomy vocabulary is listed when, and thereby always make the posts
appear as "Story Type | Topic".
Hope it's useful.. :)
------------------------------------------------------------------------
May 10, 2004 - 21:40 : MrRoot
Ack - that patchfile was generated against the current CVS tree, so I
suppose the Version should have been 'cvs'? Sorry about that if it was
misplaced.
------------------------------------------------------------------------
May 10, 2004 - 22:48 : moshe weitzman
this patch makes a lot of sense ... however, your sql is non standard
for drupal. we use the x JOIN y ON x.field = y.field syntax. Your SQL
doe snot use this JOIN syntax. Please resubmit and then I'll bet that
this will be accepted into core.
------------------------------------------------------------------------
May 10, 2004 - 23:47 : MrRoot
Attachment: http://drupal.org/files/issues/taxonomy.module_3.patch (872 bytes)
Ah.. I was wondering about that.. Looks like most of the rest of
taxonomy.module does not make use of JOIN statements. So I was
following that. Anyhow, I updated the patch to use JOIN on all of the
tables.
Cheers
------------------------------------------------------------------------
May 11, 2004 - 16:15 : Dries
Is that ANSI SQL? If these are 'left' joins, please use 'LEFT JOIN'.
If these are 'inner' joins, please use 'INNER JOIN'. Also, I'd add a
small comment to code to explain the rationale behind that query.
------------------------------------------------------------------------
August 12, 2004 - 11:28 : killes at www.drop.org
Patch doesn't apply.
More information about the drupal-devel
mailing list