WordPress фильтр по слизнякам - PullRequest
0 голосов
/ 30 июня 2011

Я пытаюсь сделать фильтр в WordPress.

Я хочу, чтобы отборщик нашел все сообщения с выбранными тегами.

$ vare_array - это "taghopconverse, tagcategorysko, tagbrandconverse"

этот выбор работает с "ИЛИ" - он находит все сообщения с тегами, но не с "И" и мне нужно, чтобы они были включены - все теги должны быть в сообщениях.

$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 голосов
/ 09 августа 2011

Если вы используете последнюю версию WordPress, вы можете использовать таксономические запросы, см. Эту тему: http://wordpress.org/support/topic/tax_query-and-wp_query-how-to?replies=4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...