wordpress multiple meta value query is not working

admin2025-06-02  9

$args = array(
    'p'                      => $product_id,
    'post_type'              => array( 'product' ),
    'post_status'            => array( 'publish' ),
    'meta_query'             => array(
        'relation' => 'AND',
        array(
            'key'     => '_ywar_product_id',
            'value'   => $product_id,
            'compare' => '=',
            'type'    => 'NUMERIC',
        ),
        array(
            'key'     => 'recommend_it',
            'value'   => 'yes',
            'compare' => '=',
            'type'    => 'CHAR',
        ),
    ),
);

// The Query
$query = new WP_Query( $args );

echo $query->found_posts;

The result is shown 0 only.

$args = array(
    'p'                      => $product_id,
    'post_type'              => array( 'product' ),
    'post_status'            => array( 'publish' ),
    'meta_query'             => array(
        'relation' => 'AND',
        array(
            'key'     => '_ywar_product_id',
            'value'   => $product_id,
            'compare' => '=',
            'type'    => 'NUMERIC',
        ),
        array(
            'key'     => 'recommend_it',
            'value'   => 'yes',
            'compare' => '=',
            'type'    => 'CHAR',
        ),
    ),
);

// The Query
$query = new WP_Query( $args );

echo $query->found_posts;

The result is shown 0 only.

Share Improve this question edited Mar 5, 2019 at 15:56 fuxia 107k39 gold badges255 silver badges461 bronze badges asked Mar 4, 2019 at 16:20 SAH ALAMSAH ALAM 11 bronze badge
Add a comment  | 

1 Answer 1

Reset to default 0

You use the "p"-argument, which looks for the wordpress Post-ID. I guess you want to search the products, that have $product_id in the meta, not for the exact post with the ID $product_id. Just remove the "p" argument from your wp_query arguments.

转载请注明原文地址:http://conceptsofalgorithm.com/Algorithm/1748840366a314163.html

最新回复(0)