获取用户的所有帖子(自定义帖子类型),然后从这些帖子中获取特定meta_key值的累计值

时间:2019-09-09 作者:tryin2learn

我正在尝试为房地产网站上的每个用户添加房产价值。

我有一个自定义的帖子类型“属性”我想从所有人身上取下“listing\\u价格”,并将其相加,以显示该代理对活动列表的拥有量。

真的不知道从哪里开始。我看到线程添加了所有自定义post类型的元值,但不是针对特定用户。

非常感谢。

2 个回复
SO网友:tryin2learn

    add_shortcode( \'show_total_listing_price\', \'show_total_listing_price\' );

    function show_total_listing_price ( $atts ) {
    global $post;


    $args = array(

    \'author\' => get_current_user_id(),
    \'post_type\' => \'POST_TYPE_GOES_HERE\',
    \'posts_per_page\' => -1,
    \'post_status\' => \'publish\',

    );

    $query = new WP_Query( $args );
    $total = 0;
    if( $query->have_posts() ){
    while( $query->have_posts() ){
    $query->the_post();
    $price = get_post_meta( $post->ID, \'PLACE_META_KEY_HERE\', true );
    $total += $price;
    }
    }
    wp_reset_postdata();
    echo $total;

    }
此代码有效!刚才有一个问题,因为我有两种类型的帖子与这个自定义帖子类型。还有一个名为“check\\u status”的meta\\u键,显示活动或挂起的属性。上面的代码将这两者结合起来。

需要修改它,以便只计算chech\\u status=\'1\'。

SO网友:S. M. Mehdi Akram
<?php 
    $args = array(
    \'post_type\' => \'corona\',
    \'posts_per_page\' => -1,
    \'post_status\' => \'publish\',
    \'orderby\' => \'date\',
    \'order\' => \'ASC\'
    );

    $query = new WP_Query( $args );
    $total = 0;
    if( $query->have_posts() ){
    while( $query->have_posts() ){
    $query->the_post();
    $price = get_post_meta( $post->ID, \'_country_total_case\', false );

    foreach ( $price as $item) :
        $ttt += $item;
    echo "<p>$ttt</p>";
    endforeach;    
    }
    }
?>