1

When I enable provided views, it works all right. But for one taxonomy dictionary (let's name it dictionaryname), I want to display users in that taxonomy, not nodes. So I disabled default view again and then:

  • I created "show users" view with path taxonomy/term/% and it fails to replace taxonomy page.
  • Then I changed path to dictionaryname/% - as path alias is set. But it fails as well.
  • I changed path to aaa/% and it works, so I know view on it's own works. It just fails to override default pages.

Any idea what am I doing wrong? And how can I get dictionaryname/% path to work? It looks like Drupal's router give original term pages precedence over my view.

4
  • I dont know if you are using tvi module or not, but latest version of module causes this problem, even if it's not used and is only enable
    – Sohail
    Commented Jun 13, 2013 at 14:33
  • @Sohail I do not. Maybe I should? And maybe it's not exactly module's bug if I can get the very bug without module at all?
    – Mołot
    Commented Jun 13, 2013 at 14:37
  • well I guess you can do exactly what you want with this module, try the latest dev version anyway and let me know if it works.
    – Sohail
    Commented Jun 13, 2013 at 15:47
  • @Sohail tvi fails miserably, taxonomy practically does not work anymore. Not a way to go.
    – Mołot
    Commented Jun 13, 2013 at 21:30

2 Answers 2

1

As per reviewing taxonomy_menu function, you need to replace path taxonomy/term/% with taxonomy/term/%taxonomy_term in "show users" view.

If you want to use path alias, set view path like this: dictionaryname/%taxonomy_term

Also, check Taxonomy and Views modules weights, make sure Views module weight is higher than Taxonomy module.

6
  • I don't quite get what are you trying to tell. Path in view does not work for me no matter is it taxonomy/term/% (as in provided, working view), taxonomy/term/%taxonomy_term or dictionaryname/%taxonomy_term. It looks like Drupal's router give original term pages precedence over my view.
    – Mołot
    Commented Jun 13, 2013 at 6:31
  • I tried it before I post my answer. I was able to see the new created page view instead of the original taxonomy term view.
    – Aboodred1
    Commented Jun 13, 2013 at 12:54
  • Lucky you. Now, what should I test to find out why my router does not work that way? :(
    – Mołot
    Commented Jun 13, 2013 at 12:56
  • Thanks. Check Views module weight in system table, make sure its higher than Taxonomy module.
    – Aboodred1
    Commented Jun 13, 2013 at 12:59
  • OK, this was the case. Now I really get the view I need. It's empty, but that's templating problem I guess. But it sets the correct title.
    – Mołot
    Commented Jun 13, 2013 at 21:39
0

With reference to your question, here is a scenario that should help :: (This implementation was done for D6. It will also work for D7 with some changes)

// Say, module name is 'common_operations'

  1. Invoke hook_menu_alter

    //Overwriting term page display 
    if (isset($items['taxonomy/term/%'])) {
      $items['taxonomy/term/%']['title'] = '';// Give title you need
      $items['taxonomy/term/%']['page callback'] = 'common_operations_taxonomy_page_display_callback';
      $items['taxonomy/term/%']['page arguments'] = array(2);
      $items['taxonomy/term/%']['access arguments'] = array('access content');
    }  
  1. Defines 'common_operations_taxonomy_page_display_callback'
    
    function common_operations_taxonomy_page_display_callback($tid){
      $term = taxonomy_get_term($tid);
      switch($term->vid) {
        case 1: //Blog Tags vocab.
          $blog_tags  = '';
          ............................
        return $blog_tags;
        case 2: //Issues vocab.
          $issues  = '';
          ............................
        return $issues;
        case 3: //Tags vocab.
          $tags  = '';
          ............................
        return $tags;
        default:
          // Returns the default term page provided by taxonomy module.
          module_load_include('inc', 'taxonomy', 'taxonomy.pages');
        return taxonomy_term_page($tid);
      }
    }
    
  2. Here, Blog Tags, Issues, Tags are different vocabularies. So, whatever changes we need for different vocabulary term details pages, we can take care off independently.

Hope it helps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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