由slugs过滤的wordpress

时间:2011-06-30 15:22:34

标签: wordpress

我正在尝试在wordpress中制作过滤器。

我希望selecect能够找到包含所选标签slugs的所有帖子。

$ vare_array是“tagshopconverse,tagcategorysko,tagbrandconverse”

这个选择正在使用“OR” - 它查找带有标签的所有帖子, 但没有与“AND” 我需要它们具有包容性 - 所有标签必须在帖子中。

$slugs = "";
$andor = " AND ";
foreach( $vare_array as $vare ) {
    $slugs = $slugs . $andor ."$wpdb->terms.slug = '".$vare."'";
    $andor = " OR ";
}

$postids = $wpdb->get_col($wpdb->prepare("
    SELECT * 
    FROM $wpdb->posts
    LEFT JOIN $wpdb->term_relationships ON($wpdb->posts.ID = $wpdb->term_relationships.object_id)
    LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)
    LEFT JOIN $wpdb->terms ON($wpdb->term_taxonomy.term_id = $wpdb->terms.term_id)
    WHERE $wpdb->posts.post_type = 'post' 
    AND $wpdb->posts.post_status = 'publish'
    {$slugs}
"));

/谢谢

1 个答案:

答案 0 :(得分:0)

如果您使用的是最新的WordPress,则可以使用分类查询,请参阅以下主题:http://wordpress.org/support/topic/tax_query-and-wp_query-how-to?replies=4