2014-06-26 3 views
0

я имею этот вопрос:WordPress Mysql запрос с Категория

$querystr = " 
SELECT DISTINCT meta_value FROM $wpdb->postmeta WHERE post_id IN(  
SELECT DISTINCT wpostmeta.post_id 
FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta 
WHERE wposts.ID = wpostmeta.post_id 
AND wpostmeta.meta_key = 'Country' 
AND wpostmeta.meta_value = 'UK' 
AND wposts.post_type = 'post') AND meta_key ='city' 
"; 
$cities = $wpdb->get_results($querystr, OBJECT); 

<?php if ($cities): ?> 

<?php global $post; ?> 
<?php foreach ($cities as $c): ?>  
<?php echo $c->meta_value; ?> <br />  
<?php endforeach; ?> 

<?php endif; ?> 

Мне нужно добавить поиск «название категории» или «идентификатор категории» ... как я могу это сделать?

Спасибо;)

_______________________________ -

спасибо за ответ, я сделал некоторые испытания, но не работает .... может ты все равно мне помочь? :)

$term_id = "SELECT term_id FROM wp_terms WHERE name='foods' "; 
$post_id = 'SELECT object_id FROM wp_terms_relationships 
WHERE term_taxonomy_id="$term_id->term_id';  
SELECT DISTINCT meta_value FROM $wpdb->postmeta WHERE post_id IN(  
SELECT DISTINCT wpostmeta.post_id 
FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta 
WHERE wposts.ID = wpostmeta.post_id 
AND wpostmeta.meta_key = 'Country' 
AND wpostmeta.meta_value = 'UK' 
AND wposts.post_type = 'post') AND meta_key ='city' 
AND wp_posts.ID = '$post_id->object_id' 
+0

Вы можете быть более понятными. Где ваша категория. ? – Adeel

+0

Мне нужно добавить поиск по категории «продукты» (ID: 56). Как мне это сделать ? –

+0

Почему вы не используете для этого предварительно определенные функции? @CaponiElia –

ответ

0

Вы ошиблись, это было просто объяснение не точного синтаксиса, вам это нужно.

global $wpdb; 
    $result = $wpdb->get_results("SELECT term_id FROM wp_terms WHERE name='foods'", OBJECT); 
    $post_id = $wpdb->get_results("SELECT object_id FROM wp_terms_relationships 
    WHERE term_taxonomy_id='$result->term_id'", OBJECT); 

Теперь вы можете передать это в свой запрос таким образом.

AND wp_posts.ID = '$post_id->object_id' 
+0

Спасибо за ответ, –

+0

Я сделал несколько тестов, но не работает ... можете ли вы помочь мне с запросом? Благодаря ! –

+0

напишите свой код здесь. – Adeel