如何解决分类悖论?

时间:2015-05-25 16:33:55

标签: drupal-7 views taxonomy

我正在使用" taxonomy display"模块。我使用这样我可以按标题而不是ID来排序我的分类术语,就像默认情况下那样。但是,我还创建了一个名为:

的分类模板
taxonomy-term--product_literature_category.tpl.php

如果我启用" taxonomy display"模块并覆盖此路径的分类视图:

/taxonomy/term/%

...它也会覆盖我上面指定的模板。更有意义的是,订单将使我的自定义模板覆盖模块。但它似乎并没有这样做。但是,如果我禁用"分类显示",它会再次考虑我的模板。

我有两个选择:

  1. 启用"分类显示"并找到一种方法来覆盖分类 - 术语 - product_literature_category.tpl.php
  2. 禁用"分类显示"并找到一种通过我自己的自定义排序参数对分类术语进行排序的方法。
  3. 我认为1很难(因为同样的事情使用两个模板并没有多大意义)。这就是为什么我倾向于在默认情况下更简单地对分类视图进行排序,或者以其他方式指定分类术语的排序。

    有谁知道怎么做?

    更新

    现在我要解决一个问题,通过模块改变分类术语的排序。这样我就可以只覆盖特定词汇表的排序。我会高度赞赏在这个方向上推动我的任何指示吗?

    更新2

    我创建了teaser_sorter.module并添加了此功能:

    function teaser_sorter_views_query_alter(&$view, &$query)
    {
        print '<pre>'; print_r($view); print_r($query); die();
    }
    

    我还确保我的模块支持视图:

    function teaser_sorter_views_api() {
       return array(
          'api' => 3,
       );
    }
    

    我无法接触到我的&#34; die&#34;。换句话说,它从未被调用过。事实上,我也试过覆盖&#34; hook_views_pre_execute&#34;,但这也不会被调用。

    有什么想法吗?

1 个答案:

答案 0 :(得分:1)

 view :  <google-taxonomy-category class="googlecategoryselectiontool" field-name="goo_cat_id" cat-sel=""></google-taxonomy-category>


       "class" used for template setup so if I want to use any.tpl then I simply have to  write tplname. if no class value given then it will take default template.
"field-name" it will consist name of the request variable  which you want to set on checkbox. by default its value going to be "selected_value[]" if no value passed for it.
      "cat-sel" it will consist of data of which category need to be selected when html load. it will take value like <?php echo htmlspecialchars(json_encode($selected_value)); ?> in          
        which $selected_value  is the array of all category id which need to be selected.