0

カスタム投稿タイプで複数のカテゴリ (分類法) を作成するクエリを作成しようとしています。次に、特定のカテゴリに基づいてホームページ クエリを作成します。現在、私は3つの分類法を持っています:

  1. 現在のスペシャル
  2. マイネケ違い
  3. 特徴

これらをプルするコードは既に作成しています。私が直面している問題は、ホームページでは、これらの投稿が「注目の」分類法にも関連付けられている場合にのみ、これらの投稿をプルする必要があることです。したがって、このための標準ロジックの例は次のようになります。

タクソノミー = current-specials AND フィーチャーの場合、成功、そうでない場合は失敗

しかし、現在のコードは OR であり、AND が必要なため、それらをすべてプルしています。

考え?(以下のコード)

<?php

$post_type = 'coupons';
$tax = 'coupons_category';
$tax_terms = get_terms($tax);

if ($tax_terms):

    foreach ($tax_terms as $tax_term):

        echo '<div id="'.$tax_term->slug.'" class="coupon-box '.$tax_term->slug.'">';

        $args = array(
            'post_type' => $post_type,
            "$tax" => array($tax_term->slug, 'featured'),
            'post_status' => 'publish',
            'posts_per_page' => -1,
            'caller_get_posts' => 1
        );
        $myQuery = null;
        $myQuery = new WP_Query($args);

        if($myQuery->have_posts()):
            while ($myQuery->have_posts()) : $myQuery->the_post();

            $price = get_field('price_image', $myQuery->ID);
            $print = get_field('print', $myQuery->ID);
            $product = get_field('product_box_image', $myQuery->ID);

            $title = get_the_title();
            $content = get_the_content();

            echo '<div class="fourty9 left box center">';
                echo '<h1>'.$title.'</h1>';
                echo '<p class="center"><img src="'.$price.'" /></p>';
                echo '<p>'.$content.'</p>';
                echo '<p class="center"><a href="'.$print.'">Print Coupon</a></p>';
                echo '<p class="center"><img src="'.$product.'" alt="Filter"></p>';
            echo '</div>';  


            endwhile;
        endif;

        echo '</div>';

        wp_reset_query();

    endforeach;

endif;

?>
4

1 に答える 1

0

これを試すことができます ( tax- タクソノミー スラッグを使用します。「tax_query」を支持してバージョン 3.1 で非推奨になりました)

$args = array(
    'post_type' => 'coupons',
    'posts_per_page' => -1,
    'caller_get_posts' => 1,
    'tax_query' => array(
        array(
            'taxonomy' => 'coupons_category',
            'field' => 'slug',
            'terms' => array( 'current-specials', 'featured' ),
            'operator' => 'AND'
        )
    )
);
$query = new WP_Query( $args );
于 2013-09-24T01:26:17.690 に答える