get_postの使い方

//引数の設定 ex1
$args = array(
    'post_type' => 'post',
    'meta_key' => 'subtitle',
    'meta_value' => 'null',
    'meta_compare' => '!='
);

//引数の設定 ex2
$args = array(
    'post_type' => 'news',
    'meta_query' => array(
        array(
            'key' => 'url',
            'value' => 'www.sandalot.com'
        ),
        array(
            'key' => 'area',
            'value' => 'null',
            'compare' => '!='
        )
    )
);
//投稿情報の取得
$post_list = get_posts( $args );

わかっているようで、全然分かってなかったのでハックに残しておきます。投稿を取得する関数の場合大体は、この引数の設定が重要になります。 それぞれ上記のコードを見ていくと、、、

まずex1では、投稿タイプがpostの投稿のなかのメタキーがsubtitleで指定されているデータを全て取り出しています。ここでの一捻りさせているポイントとしては、meta_valueとmeta_compareを利用して値がない投稿からはデータを取らないようにしている点です。meta_valueは、入っているデータの値、meta_compareは比較演算子を認識します。今回では、投稿中のsubtitleの中身がnullでないという指定をしています。また比較演算子のデフフォルト値はもちろん’=’で、他には『>=』『>』『<』『<=』『LIKE』などが使用可能です。

次にex2ではmeta_queryを利用して、一度に複数のデータを取り出しています。具体的には、「メタキーがurlで値がwww.sandalot.com」と「メタキーがareaで値が入っている」この2つの投稿データを取り出しています。これは、よく使いそうなので、残しておきます。