2013-03-20 144 views
1

我有城市名稱的數組顯示文章 - WordPress的

$cities = array('Ludhiana','Doraha','Jagraon','Moga','Phillaur','Ahmedgarh'); 

在我的wordpress實現中,我有一個名爲「cty_name」

的自定義字段現在,我想查詢那些包含'cty_name'自定義字段中的任何數組值的帖子。我知道這可以在Wp_Query函數中使用meta_query來完成,但無法弄清楚。

請引導我以一種快速有效的方式來獲取這些帖子,實際上我會在數組中有大約100個值,並且將每個值與帖子進行比較將是低效的。

謝謝你,

編輯:

我解決了這個問題,這是一個容易的,但...感謝名單大家的鼎力支持

$cities = array('Ludhiana','Doraha','Jagraon','Moga','Phillaur','Ahmedgarh'); 

$args = array(
'post_type' => 'city_posts', 
'meta_query' => array(
    array(
     'key' => 'cty_name', 
     'value' => $cities, 
     'compare' => 'IN' 
    ) 
) 
); 

回答

3

我解決了這個問題,這是一個容易的,但...感謝名單大家的鼎力支持

$cities = array('Ludhiana','Doraha','Jagraon','Moga','Phillaur','Ahmedgarh'); 

$args = array(
'post_type' => 'city_posts', 
'meta_query' => array(
    array(
     'key' => 'cty_name', 
     'value' => $cities, 
     'compare' => 'IN' 
    ) 
) 
); 
-1

嘗試此大小與wp_query,即時推斷您的密鑰是cty_name

$args = ('meta_key' => 'cty_name'); // this will get all posts with meta key cty_name 
$the_query = new WP_Query($args); 

while ($the_query->have_posts()) : 
    $the_query->the_post(); 
    echo '<li>' . get_the_title() . '</li>'; 
    the_content(); 
endwhile; 


wp_reset_postdata(); 
+0

我想,我無法解釋詳細情況。要求是, if(自定義字段'cty_name'的值存在於給定數組$城市中){ 顯示帖子; } – 2013-03-20 04:42:07

+0

是cty_name你的meta_key有多個值嗎?存儲到它? – 2013-03-20 04:51:49

+0

'cty_name'只是自定義字段的名稱,要比較的多個值存儲在$ cities數組中。 – 2013-03-20 04:55:12

-1

嘗試使用這一

<?php $punjab= array ('Ludhiana','Doraha','Jagraon','Moga','Phillaur','Ahmedgarh'); print_r($punjab); $pos = array_search('Ludhiana', $punjab); echo 'Phillaur found at: '.$pos; ?> 
+0

謝謝..但您剛剛給出了相反的解決方案。 我想在自定義字段中顯示包含任何數組值的所有帖子(ludhiana,doraha,jagraon .....&all)。 – 2013-03-20 05:01:06

+0

現在你從數組中獲得搜索值,把if條件和匹配搜索到的結果值到你的自定義字段值,如果值匹配,然後顯示其他明智的不是 – 2013-03-20 05:04:24

+0

,但這將是在運行時非常低效,因爲我有大約100個值在陣列和數千帖子匹配... – 2013-03-20 05:05:38

相關問題