2016-04-04 14 views
0

ここで間違っているのは分かりません。カスタム選択フィールドに基づいて投稿数をカウントする - ワードプレス

CMS = Wordpressの

は私がlofordされる1つのカスタム選択フィールド

カスタムポストタイプ名を持つカスタムポストタイプを持っている

Metaキーはptb_select_1

で、4つのメタ値があります

  • select_1
  • select_2
  • 私は選択フィールドの値を持っているどのように多くの記事をカウントショートを作成する必要がselect_3
  • select_4

「select_1ここ

が私のコードで、私は除外した場合、それは動作しますmeta_value ,,,私がしよういかに難しいかに関係なく、私はちょうどそれが選択フィールド値TES用

function counting_shortcode($atts){ 
    ob_start(); 

    $args = array(
    'post_type'  => 'loford', 
    'meta_key'  => 'ptb_select_1', 
    'meta_value' => 'select_1' 
); 


     // query 
    $the_query = new WP_Query($args); 

    // counting the query 
    echo $the_query->found_posts; 

    $output = ob_get_clean(); 
    return $output; 
} 
add_shortcode('test3', 'counting_shortcode'); 

に基づいてカウントするように取得するカントティンの目的で、私は、テキストフィールドを作成し、それが動作します。..

だけではない選択フィールド

は誰でもしてください助けることができます。

おかげ

答えて

0

あなたはこの方法で

function count_post(){ ?> 

    //get value of droup down by javasctipt and pass it into post arg 

<select name="select_f" id="select_val" onchange="valueselect(this.value);"> 
     <option value="">select</option> 
     <option value="select_1">select_1</option> 
     <option value="select_2">select_2</option> 
     <option value="select_3">select_3</option> 
     <option value="select_4">select_4</option> 
</select> 

    <script type="text/javascript"> 
    function valueselect(){ 
     var i = document.getElementById('select_val'); 
     var p = i.options[i.selectedIndex].value; 
     location.href="?p="+p; 
    } 
    </script> 

    <?php 
     $post_array = array('post_type'=>'post', 'posts_per_page'=>-1,'meta_key'=>'ptb_select_1','meta_value'=>$_REQUEST['p']); 
     $cust_posts = new wp_query($post_array); 
     echo "count post-> ".$cust_posts->found_posts; 
    ?> 
    <?php 
    $output = ob_get_clean(); 
    return $output; 
} 

add_shortcode('get_count', 'count_post'); 
を行うことができます
関連する問題