Hi,

I want to show different views (of teasers) in different sections of the site that use the same vocabularies.
Like:
1. Cars in example.com/cars/...
2. Bikes in example.com/bikes/...
3. Accessories in example.com/accessories/...

These sections (Cars, Bikes, Accessories) use different content types that have common taxonomies, such as Manufacturer, Dealer, and Location.

I have a menu on the home page for each section. When users click this menu, they are shown teasers of the relevant content type (using a tabular/grid view).

Further, I want to filter these teaser views using Taxonomy Filters. This is creating the problem. When I apply a taxonomy filter, the path gets reset. For example, when I click on a "refine filter" the url get reset to example.com/taxonomy/term/% and I get a simple list of teasers with all content types that match the filter.

I tried using PathAuto but it hardcodes the paths. The alternative seems to be to add a string to the URL when the user clicks in home page menu and make that string "persist" even when a taxonomy filter is applied.

For example, when the user clicks Cars, he goes to example.com/cars, then when he select a filter on manufacturer such as Ford, he goes to example.com/cars/taxonomy/term/% (which can easily be change to example.com/cars/manufacturers/ford)

The problem is how to make a custom string "car" stay on from the point user selects the car option. I am assuming that the view will ignore this extra string between the url and the relative path generated for the taxonomy term!!

I have not really explored the Context module... This is really a newbie question, so any guidiance on the direction to take will be very helpful! :)

Thanks!

Comments

ludo1960’s picture

Got a URL to look at?

binarybee’s picture

as of now...

binarybee’s picture

as mentioned in this node:
http://drupal.org/node/1202796#comment-4666658

and much earlier in this: http://drupal.org/node/1202796#comment-4666658

However, could this generate a conflict between views and panels working on the taxonomy term pages, mentioned here:
http://drupal.org/node/1098498#comment-4345484

which could be fixed as explained here:
http://drupal.org/node/1098498#comment-4459080

Or, would module like Galaxy URL Rewrite be a better solution??? Problem is I am using Drupal 7 and Galaxy URL Rewrite is 6.x only...

My instinct says there should be another module or a simple solution somewhere... Any clue would be helpful!!

binarybee’s picture

It seems the solution is to:
1. Use the subdomain project to create subdomains based on the content type...
2. Separately, export the view and create a new module for it
3. Revert to the "In code" view
4. Add a variable to the view's code that can be compared against the subdomain identifier
5. Then modify Views 3 module code to check what the base url is. If it is the relevant subdomain (if the field/variable saved in the In Code view matches the first part of the base url) then allow the appropriate view to pass through ...

Hope someone takes a look and validates if this is the best approach! :)

derekwebb1’s picture

I recommend panels and views 3. You can have as many different displays as you like. Display suite may also help your case. TVI is prob not what you need here.

binarybee’s picture

Hi Derek,

Thanks for your response.

I made another attempt at using TVI to do what's required... There were some bugs in TVI, D7 version which I could fix from the patch here: http://drupal.org/node/1357920

TVI launches the appropriate View using a term now... However, it bombs when trying to filter the view with this error message:

EntityMalformedException: Missing bundle property on entity of type taxonomy_term. in entity_extract_ids() (line 7409 of /var/www/drupal/includes/common.inc).

Is this a limitation in the Drupal core? Even Panels for D7 do not support multiple terms as of now... Or do you see this being resolved in TVI anytime soon?

This feature is critical for my website and I would be happy to sponsor or chipin to build this functionality if it's possible and feasible.

Thanks and regards,
Manu