0

I've set up a view to produce a block of content nodes based on taxonomy. I have the filter criteria to include Has Taxonomy term (not empty). Then under advanced I added a contextual filter 'Has Taxonomy Term ID'.

But when I set it up (or edit it) there is a message:

This display does not have a source for contextual filters, so no contextual filter value will be available unless you select 'Provide default'.

And that type (has taxonomy term ID) comes under 'provide default value'.

I don't mind all of this, but this particular example has 3 taxonomy terms that are quite similar:

  • Virtual meetings
  • Virtual classroom
  • Virtual seminar rooms

These block views are pulled onto a panel page, again based on taxonomy. But on each of the 3 pages there are 3 listings, instead of one!

screenshot

Can anyone think of what I might be doing wrong here?

I am using Drupal 7 and Views 7.x-3.3.

  • Have you enabled distinct from query settings? if not, then try by enabling that option, You might get result as per your requirement. – Viraj Nov 19 '15 at 11:12
0

This is frustrating. AFAIK

"Content Pane" displays do not have context passed to them ever. Views have "master" displays that do get context passed.

The "master" display is essentially the view's defaults. To see it, there is an option here: admin/structure/views/settings/basic (or just delete all other displays)

To add a view's "master" display to a panel, you need to see it first: http:///admin/structure/panels/settings

Now go back to the panel, add content, select "views" instead of "view panes" to see your view.

  • You can get a lot of contexts for a content pane in the view's settings. "Use argument input > Current context > Content Id" or something similar to that for the content pane. Then in contextual filters, provide default from url. – Niall Murphy Feb 27 '16 at 3:52

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.