Wordpress自定义帖子元查询

时间:2012-06-27 07:19:03

标签: wordpress meta

我正在尝试使用动态字段“comment_ID”为每个评论查询自定义帖子类型。我正在使用下面的代码。这当前显示了我不想要的评论ID,但没有按照我的意愿显示“付费”。

<?php 
$commID = comment_ID();
$args = array( 'post_type' => 'paidbriefs', 'meta_key' => 'Comment_ID', 'meta_value' => 'echo $commID', 'posts_per_page' => 10 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
    echo 'paid';
endwhile; ?>
</p>

我显然是在回复$commID变量时做错了,因为这没有显示任何内容。如果我将其更改为$commID,则会为具有Comment_ID元的每个评论返回“付费”,无论它是否与实际评论ID匹配。有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

我认为你需要做的是循环内的循环,

第一个循环生成标准循环,这将包含您的帖子信息,评论等。 在该循环中,您需要声明您的comment_ID;

然后从那里,你设置另一个内部循环, 使用自定义字段的comment_ID

<?php
$args = array( 'post_type' => 'paidbriefs', 'posts_per_page' => 10 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
   $commID = comment_ID();
   $innerargs = array( 'post_type' => 'paidbriefs', 
                       'meta_key' => 'Comment_ID', 
                       'meta_value' => $commID, 
                       'posts_per_page' => 10 );

   $innerloop = new WP_Query( $innerargs );
   while ( $innerloop ->have_posts() ) : $innerloop ->the_post();
      echo 'paid Comment';
   endwhile;

endwhile; 
?>
但是未经测试。 希望这会有所帮助,

答案 1 :(得分:0)

<?php
        $args = array( 'post_type' => 'ait-dir-item',
                       'meta_query' => array(
                            array(
                                'key' => 'location',
                                'value' => 'annapolis'
                            ),
                            array(
                                'key' => 'item_tags',
                                'value' => 'non-marine'
                            )
                        ),
                        'orderby' => 'title',
                        'order' => 'ASC',
                       'posts_per_page' => 300 );
        $loop = new WP_Query( $args );
        while ( $loop->have_posts() ) : $loop->the_post();
            the_title('<h3 class="entry-title"><a href="' . get_permalink() . '" title="' . the_title_attribute( 'echo=0' ) . '" rel="bookmark">', '</a></h3>');
            echo '<div class="entry-content">';
            the_content();
            echo '</div>';
        endwhile;?>

你可以尝试这个