我正在尝试获取第一个自定义帖子类型的标题,其中包含分类法中的特定术语<但是我不擅长SQL,因此使用$wpdb
.
这是我的代码:
$posts = $wpdb->get_results("
SELECT ID, post_title
FROM $wpdb->posts
LEFT JOIN $wpdb->term_relationships
LEFT JOIN $wpdb->term_taxonomy
WHERE post_type = \'property\'
AND $wpdb->terms.name = \'Locked\'
AND $wpdb->term_taxonomy.taxonomy = \'status\'
");
echo $posts[0]->post_title;
关于如何获取分类法“status”中第一个带有“Locked”一词的自定义帖子类型“property”的标题,有什么建议吗?
Update
这就是我使用WP_Query
:
<?php
$args = array(
\'post_type\' => \'property\',
\'tax_query\' => array( array(
\'taxonomy\' => \'Status\',
\'field\' => \'slug\',
\'terms\' => $term
))
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) :
$loop->the_post();
the_title();
echo \'<div class="entry-content">\';
echo get_the_post_thumbnail();
the_content();
echo \'</div>\';
endwhile;
?>
在哪里
$term
是
"Locked"
.
我真正需要的是一种可以在一个或多个数组中通过多个术语和分类进行查询的方法<有什么提示吗?
最合适的回答,由SO网友:Johannes Pille 整理而成
关于如何获取分类法“status”中第一个带有“Locked”一词的自定义帖子类型“property”的标题,有什么建议吗?
$args = array(
\'post_type\' => \'property\',
\'tax_query\' => array(
array(
\'taxonomy\' => \'status\',
\'field\' => \'slug\',
\'terms\' => \'locked\'
)
)
);
$your_query = new WP_Query( $args );
while ( $your_query->have_posts() ) {
$your_query->the_post();
$the_title = get_the_title(); // variable $the_title now holds your title
}
我真正需要的是一种可以通过多个术语和分类法进行查询的方法。
$args = array(
\'post_type\' => \'property\',
\'tax_query\' => array(
\'relation\' => \'AND\',
array(
\'taxonomy\' => \'status\',
\'field\' => \'slug\',
\'terms\' => \'locked\'
),
array(
\'taxonomy\' => \'color\',
\'field\' => \'slug\',
\'terms\' => \'blue\'
)
)
);
$your_query = new WP_Query( $args );
Related Reading:http://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters