Wordpress get_posts()获取具有空自定义字段的帖子

时间:2014-12-16 13:37:11

标签: php wordpress

我试图在Wordpress中使用get_posts()函数来检索帖子列表,但前提是他们有一个空的自定义字段,称为wpcf-translated-details

这是我目前的代码:

    <?php
    require_once('wp-load.php');
    $temp_list_of_products_array        = get_posts( array('post_type' => 'sale', 'numberposts' => 10 ) );
    $temp_list_of_products_array_length = count( $temp_list_of_products_array );

    for ($xt = 0; $xt < $temp_list_of_products_array_length; $xt++) {
        $temp_product_id                    = $temp_list_of_products_array[$xt]->ID;
        $temp_product_untranslated_field    = get_post_meta($temp_product_id, 'wpcf-product-details', true);
        $temp_product_translated_field      = get_post_meta($temp_product_id, 'wpcf-translated-product-details', true);
        $temp_product_description_language  = 'en';

        if ($temp_product_translated_field == null) {
            $temp_product_translated_contents   = google_translate_text($temp_product_untranslated_field, $temp_product_description_language);
            update_post_meta($temp_product_id, 'wpcf-translated-product-details', $temp_product_translated_contents);
        } 
        echo $temp_product_id;
    }
    ?>

但我找不到任何关于如何实现这一目标的方法或说明。

所以我的问题是,如何修改此代码,以便只提取10个空wpcf-translated-details个自定义字段的帖子?

由于

1 个答案:

答案 0 :(得分:2)

您可以查看meta_query here WP_Query参数。

$posts = new WP_Query(
    array('post_type' => 'sale',
        'numberposts' => 10,
        'meta_query' => array(
            array(
                'key' => 'wpcf-translated-details',
                'value' => '',
                'compare' => '=',
            )
        )
    )
);