2017-10-20 11 views
0

自分のサイトに表示しているカスタム投稿の種類の一覧があります。WordPressで別のプラグインのmeta_valueでカスタム投稿の種類を注文する

https://i.imgur.com/jXR26i5.jpg

コードを次のようになりますのために:それはこのようになりますように、また、それらのポストタイプに、私は、私は各ポスト型に親指までの評価システムを追加することができます私のWordPressのプラグインを追加しました:

<?php 
/* The custom post types query */ 
    $query = new WP_Query(array(
     "post_type" => "motto", 
     "order" => "ASC", 
    )); 
    while($query -> have_posts()) : $query -> the_post(); 
?> 

/* Container with the ratings from the plugin + each post type */ 
<div id="motto-container"> 
    <?=function_exists('thumbs_rating_getlink') ? thumbs_rating_getlink() : ''?> 
    <h3 class="abimottos"> 
     <?php echo get_post_meta($post->ID, 'motto_titel', true); ?> 
    </h3> 
</div> 

私は、これらのカスタムポスト+自分の評価のリストを持って、そしてもちろん、各ポストは、個々の格付けを持って、私はそれらの評価の値の後に私のカスタムポストタイプを注文したいです。どうすればアーカイブできますか?

評価のmeta_keyは_thumbs_rating_upです(私はすでにARI Adminerプラグインで値を変更しています)ので、このmeta_keyを使用して、評価のmeta_valueの後にカスタム投稿タイプを注文することはできますか?

私はPHPとデータベースが新しくなっています。

+0

https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters – CBroe

答えて

1

既に投稿を取得するためにWP_Queryを使用していますので、$ args配列で並べ替えるmeta_keyを指定することができます。あなたはmeta_keyorderbyの両方でキー名を含める必要が

$query = new WP_Query(array(
    'post_type' => 'motto', 
    'meta_key' => 'thumbs_rating_up', 
    'orderby' => 'thumbs_rating_up', 
    'order'  => 'DESC' 
)); 

注意。私はまた、降順でソートして、最も高い評価を最初に表示したいと考えています。

参考:Wordpress Codex for WP_Query

はまた、meta_key上の注意:
アンダースコアで始まる meta_keysは、プライベートおよびカスタムフィールドから隠されているので、通常、あなたは、アンダースコアなしのバージョンを使用します。これはここでは当てはまらないかもしれませんが、管理者が評価を変更することはできませんが、使用する必要があるmeta_keyが実際にはで、thumbs_rating_upではないことを確認してください。

+0

ありがとうございます!これは私を助けた!私はちょうど "meta_value_num"にorderbyを変更しなければなりませんでした。 "thumbs_rating_up"はpost_idでそれらを注文します:) –

+0

@NikolaiNowolodski喜んで私は助けることができました!私はあなたが使用しているプラ​​グインを知らなかったので、私はあなたの質問からそれが評価を持っていると仮定したので私の答えに "thumbs_rating_up"を使用しましたが、うれしいキーを見つけることができてうれしいです:) – FluffyKitten

関連する問題