2015-03-02 2 views
0

Мне нужно создать фильтр с Wordpress Taxonomy Категории и его сообщения, подобные этому: question Выпадающие списки названий, эмитентов, сайтов Isin и Market.Как я могу разделить категории и создать простой фильтр со своими сообщениями? Я искал больше, но не знал, как управлять и с чего начать. Протестировал плагин Beautiful taxonomy filters, но он не сделал этого, что мне нужно с отдельными категориями. Помогите мне, пожалуйста, с этим. Я адресности в раскрывающиеся, как таким образомКак создать фильтр с таксономией Категории в Wordpress

function get_terms_dropdown($taxonomies, $args){ 
            $myterms = get_terms($taxonomies, $args); 
            $output ="<select class='news_cat'>"; 
            foreach($myterms as $term){ 
             $root_url = get_bloginfo('url'); 
             $term_taxonomy=$term->taxonomy; 
             $term_slug=$term->slug; 
             $term_name =$term->name; 
             $link = $root_url.'/?'.$term_taxonomy.'='.$term_slug; 
             $output .="<option value='".$link."'>".$term_name."</option>"; 
            } 
            $output .="</select>"; 
           return $output; 
           } 
        $taxonomies = array('articles-tax'); 
        $args = array('orderby'=>'count','hide_empty'=>false); 
        echo get_terms_dropdown($taxonomies, $args); 

и создал форму, как таким образом

<form role="search" method="get" id="searchform" action="<?php bloginfo('url'); ?>">and dropdowns here</form> 

, но до сих пор не могу получить и видеть в URL это все выбранные выпадающий Valus, помогите мне PLS исправить это , Это мой первый шаг в мире фильтров!

ответ

0

Проведите весь термин name или slug по адресу SEARCH. Получить QUERY_STRING и искать Term ID с get_term_by функции:

// Suppose you have term name in URL 
// Then find Term ID with Name, or if you have slug in url then change "name" to "slug" 
$term = get_term_by("name", $term_name, $taxonomy); 
//$term->term_id; 

Теперь вы должны использовать WP_Query для доступа к сообщения конкретных долгосрочных идентификаторами:

$args = array(
    'post_type' => 'YOUR_POST_TYPE', 
    'tax_query' => array(
     array(
      'taxonomy' => $taxonomy, 
      'field' => 'id', 
      'terms' => $term->term_id // You can pass more then one term id like array(32, 65) 
     ) 
    ) 
); 
$query = new WP_Query($args); 
+0

Что вы имеете в виду говоря, пройти всю систематику имя на url @jogesh_pi? –

+0

@AnahitGhazaryan oops its typo error, его термин name –

+0

Так, например, я получил эти категории в раскрывающемся меню и стилизовал их после него, что я должен делать @jogesh_pi? –