Toggling view modes of Views results with Display Suite I asked a similar question about a month or so ago, and the answer was to use the Views Modes module.  That module required the PURL module.  The problem is the PURL module leaves parameters on your URL all over the site, and have not figured out a way to turn it off.  Others have posted a support issue and it goes ignored.

So, I'm back to the drawing board.  I have nodes that are rendered, using view modes defined in Display Suite.  Is there a way I can toggle between view modes in Views?  What I'm really trying to do is provide a bunch of filter checkboxes, along with the ability to toggle between view modes, but I need to find a solution for the view modes first.

Is there a module that makes this easy, or do I need to write some code.  If I do need to write some code, how should I approach it?
Solution that I use sometimes.


Create a content type with one or more multiple-value block reference fields.
This is like a "cheap" version of panels..
Create your views displays as blocks. One for each version.
Create a custom module to define a block that acts as the "switcher" between the two. Put some dummy content for now.
Create two nodes with the block reference.

One that has the switcher and the Views display A.
One that has the switcher and the Views display B.

Set url aliases for both nodes.
Flesh out the "switcher" block. E.g. make it keep the url query parameters. Make it look different depending on whether you are on A or B.
If you want, you can have a separate block for the exposed filters, that you also add via the blockreference.
Use Display suite or some other way to arrange the different blocks on the page.


The benefit of block reference + ds over theme regions is that you don't spam your theme regions with one-page-only blocks.