1

After many hours I still cannot wrap my head around what is needed to make my situation work. Here it is:

I current am using clean URLS like so /artists/name-of-artist routes content type Artist. I have content types: Arists, Album Releases, Tour Dates, and Media. I would like to tie everything together using vocabulary Artist Tags (yes, even Artist content type would get tagged). So, say for example I have "Test Artist" in Artist content. I tag it with "Test Artist" Artist Tag. I also create an Album Release tagged "Test Artist". My question now is when visiting /artist/test-artist how do I have a view that shows not only the dat from that artist node but also from the Album Release node tagged "Test Artist".

I have already tried Node Reference. This is not an ideal solution for me as I want the flexibility of library categorization via taxonomy. I just can't understand how I can pull in another node's content based on /artist/test-artist Artist Tag field.

I forgot to mention that I am using the latest version of Drupal 7, and Views 3.

  • its seams you talk about panels where you can show related contents in separated blocks based on taxonomy in one page – Mohammad Ali Akbari Mar 25 '12 at 10:41
1

Sorry for a general answer, but it may get you in the right direction anyway.

What you seem to need is to establish relationships in views. By adding a relationship, you just add an object you would like to refer to. Once you add a relationship (on the right hand side, in Advanced panel), additional fields appear in the Add Field and Filter dialogs. Note the dropdown list that appears in field-related dialogs that contains relevant relationships that you have defined. You may also have a cascaded relationship (a relationship that uses another relationship).

All that translates later into the WHERE clause of the final query which filters what you want to show/hide.

To use the elements of the path, you want to use Contextual filter where you specify which part of the URL means what.

One thing to remember is that, even though you have clean URLs turned on, there is an "unclean" URL query behind the scenes which contains stuff like term IDs or node IDs. Perhaps it'd be useful for you to turn the clean URLs off for a moment, and play for a while just to see what kind of URLs will be used by views contextual filter. Or put <?php print $_GET['q'] ?> somewhere in the page.tpl.php for testing convenience.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.