0

我在尝试使用 tag_id 作为过滤器在 Wordpress 中构建以下查询时遇到问题:

    <?php 
        $the_query = new WP_Query( array ( 
        'posts_per_page' => '-1', 
        'tag_id' => '' 
        ) );
        while ( $the_query->have_posts() ) : $the_query->the_post();
    ?>

如您所见,“tag_id”值是空的,因为我试图从这里检索值:

        <?php echo of_get_option('slideshow-tags', 'no entry' ); ?>

此回声返回一个值,因此它可以工作,但我不知道如何使其适应查询而不会出现 php 错误。

我试过:

    <?php 
        $the_query = new WP_Query( array ( 
        'posts_per_page' => '-1', 
        'tag_id' => 'echo of_get_option('slideshow-tags', 'no entry' );             '
        ) );
              while ( $the_query->have_posts() ) : $the_query->the_post();
    ?>  

但它不会工作。

4

3 回答 3

1

尝试使用这个:

$code_to_display = of_get_option('slideshow-tags', 'no entry' );
'tag_id' => '$code_to_display'
于 2012-08-19T14:51:36.203 回答
1

你不想echo返回的值of_get_option,你想在你的数组中使用它:

$the_query = new WP_Query(array( 
    'posts_per_page' => -1, 
    'tag_id' => of_get_option('slideshow-tags', 'no entry')
));

// Now just do the loop...
于 2012-08-19T15:00:19.070 回答
0

这是 OP 的答案,添加到问题中,并移至此处以符合站点指南。


以下是未来参考的答案:

        <?php 
        $the_query = new WP_Query( array ( 
        'posts_per_page' => '-1', 
        'tag_id' => of_get_option('slideshow-tags', 'no entry') 
        ) );
        while ( $the_query->have_posts() ) : $the_query->the_post();
        ?>  
于 2019-07-28T21:11:32.903 回答