I have been attempting to create a panel page with two columns, one to display view1 and the other view2. The intent is to have the user choose a content type in each column using exposed filters and have the list of content displayed by the view in the panel page. This has turned out to be more complicated to execute than I first thought.
The problem is with the URL. I can have a URL to invoke the panel page, eg.
relate/relate, and it will display the same list of all content in each column by default. However, when I change the content type in one of the columns, the URL is changed in response and only the changed view is displayed (the panel is not longer activated.
So I am trying to find a way to manage two views from the same page panel that either does not change the URL request or that the panel can manage correctly.
I have tried passing both content type names in the URL eg.
relate/%type1/%type2 and have each view read one of the URL positions using contextual filters. This has approach has several problems
- I am not sure how to tell the view contextual filters how to react to only the relevant wildcard in a two wildcard URL
- How do I set up a contextual filter to read the value in the path segment and interpret it as a filter for a content type? The contextual filter can be set up to read the raw URL path segment (in the section re: what to do when the filter fails), but there does not appear to be a way to set up the validation to determine a content type.
Has anyone ever achieved this or can you suggest an approach that might work?
I found that I can prevent the URL from changing by setting a n option in the view content pane to use the Panel URL. This keeps the display as two columns (from the panel), but does not unlink the two similar view content panes. They still both change when I set the exposed filter for either. Apparently the exposed filter is only created once , but displayed twice and sends its setting to both panes. I found this to be true even if I create two distinct View definitions. If the settings for the filters are the same they appear to both run if either exposed filter is changed.