您需要在content-*.php
使用正确的参数,以便将其发送到循环中。
<?php
$args = array(
\'tax_query\' => array(
array(
\'taxonomy\' => \'recipes\',.
\'field\' => \'slug\',
\'terms\' => \'dessert\'
)));
$your_posts = new WP_Query( $args );
?>
您可以添加此查询所需的任何其他参数。您可以在WordPress Codex页面上找到有关参数的更多参考
WP_Query 并将其添加到
$args
大堆
在我的例子中,WP_Query
将要查看recipes
分类学,它会发现recipes
通过查看slug,找到所有具有该值的帖子dessert
.
设置好新的WP\\U查询后,将其发送到WordPress循环:
<?php
if ( $your_posts->have_posts() ) : while ( $your_posts->have_posts() ) : $your_posts->the_post();
?>
// Your Post Stuff Goes Here
<?php endwhile; else: ?> <p>Sorry, there are no posts to display</p>
<?php endif; ?>
<?php wp_reset_query(); ?>
为了获取自定义字段,我建议在
functions.php
文件来处理此问题,并在循环中调用它。如果您可以更轻松地在整个主题中使用它,那么就可以这样做。
<?php
function my_custom_field( $id, $field_name ) {
return get_post_meta( $id, $field_name, true );
}
?>
此函数的作用是访问帖子的元数据,查找指定的字段名,并返回单个值。如果有多个值使用同一个键,则省略
true
函数将返回一个数组,然后可以使用
foreach()
来处理这个问题。
例如,假设您的自定义字段是\'mood\'
那么对该函数的调用将是:
<?php my_custom_field( $post->ID, \'mood\' ); ?>