2013-07-16 116 views
0

我有一個非常簡單的代碼,列出所有的自定義帖子類型,讓我們的用戶從他們使用「每個循環」選擇
問題是當給出選定的值時,它是重複的,因爲它是已經存在,因爲每個循環列表中它也有..
所以我不知道如何排除用戶從下拉菜單中選擇的項目任何方式希望得到一些幫助,在此先感謝這裏是代碼..wordpress邏輯幫助(下拉)選擇項

<?php // select funeral home ad's plugin 
$mypostype = get_posts('post_type=funeral_homes'); 
if($mypostype) : ?> 

      <?php 
      $funeral_home_meta = get_post_meta($curpost->ID, '_selected_funeral_homes', true); 
//echo $funeral_home_meta ; 
$the_post_value = $curpost ->ID ; 
//echo $the_post_value ; 

$adhome_id = $funeral_home_meta; 
$queried_post = get_post($adhome_id); 
$ad_title = $queried_post->post_title; 

?>  

<label for="my_select">Funeral home ad ? </label> 
<select id="my_select" name="my_select"> 
<?php foreach ($mypostype as $mypost ) : ?> 
<option value="<?php echo $mypost->ID ; ?>"><?php echo $mypost->post_title ?></option> 
<?php endforeach; ?> 
    <option value="<?php echo $funeral_home_meta ?>" selected><?php echo $ad_title 
//the proplem lays here ?></option> 
</select> 
</form> 
<?php endif ?> 

至於設置選定的值我不得不再次提到它,它的重複是否有任何替代? ..再次感謝.. basem

+0

嘗試:'get_posts(「post_type = funeral_homes&排除=」 get_the_ID())' – elclanrs

+0

您的快速回覆上代碼工作完美,但正如你看到的問題謝謝先生是,當我加入<期權價值= 「<?php echo $ funeral_home_meta?>」selected><?php echo $ ad_title ?>所選項目的另一個副本顯示..所以它顯示兩個循環和一個選定的項目..謝謝 –

回答

0

更改您的foreach循環如下。

<?php foreach ($mypostype as $mypost ) : 
if($mypost->ID==get_the_ID()) // check the it is current post 
    continue; 
?> 
<option value="<?php echo $mypost->ID ; ?>"><?php echo $mypost->post_title ?></option> 
<?php endforeach; ?> 
+0

謝謝一百萬先生工作像魅力,但不得不改變驗證規則($ mypost-> ID == $ funeral_home_meta)..再次感謝先生..基地 –