我在尝试使用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' ); ?>
这个echo返回一个值,所以它可以工作,但我不知道如何在不出现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();
?>
但它不起作用。如果我遗漏了一些显而易见的东西,我就不是一个熟悉PHP的人。
非常感谢!
约翰
编辑:
以下是未来参考的答案:
<?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();
?>
答案 0 :(得分:1)
尝试使用它:
$code_to_display = of_get_option('slideshow-tags', 'no entry' );
'tag_id' => '$code_to_display'
答案 1 :(得分: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...
答案 2 :(得分: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();
?>