0
votes

This is for Drupal 6. Field display weights (per node) would solve this problem in Drupal 7, but no back port exists currently for 6.

I have a series of node reference fields for a variety of multi-media content on my site that I would like to be able to re-order on a per node basis.

I created node reference fields, each referring to one specific content type - field_ref_image (images), field_ref_documents (documents), field_ref_videos (videos), field_ref_youtube (youtube videos)

I then built views for each content type using the node relationships module to make a very visual presentation for selecting content.

But now I need to be able to re-order each of these on a per node basis.

So field_ref_image may need to be above field_ref_documents in one case but below it in another.

I built a view to display these fields and just need something to sort the results on.

I believe the solution lies in using a select list field in conjunction with the multi select module (allowing a sort order of field items), but I don't know how to set the allowed values to be my existing fields.

As a fallback I do have one node reference field created that references all my content types, then have a view built that groups based on node type, but the admin UI experience isn't very clear as to what content type is being referenced in any particular case.

Figuring out how to weight or order each field type using a select list or similar CCK field I believe is the answer.

Are there any PHP snippets that would allow me to use these pre-existing CCK fields as my allowed values list?

1

1 Answers

0
votes

TBH, this seems like a pretty heavy solution for use case that is better handled natively by D7. In fact just offhand, I don't see how you would be able to do this in D6 using the method you described.

Not to be an upgrade evangelist here, but what are the reasons for trying to extend your site's functionality on an old version, instead of upgrading to the current version where your use case is much more easily implemented?