2016-09-01 42 views
-1

這裏是我的單選按鈕的設置: enter image description here顯示最新的帖子 - 如果「是」選擇爲單選按鈕值

我似乎無法得到那些在價值是帖子中顯示環..

這裏是我的循環:

<?php 
$args = array( 
    'numberposts' => 1, 
    'post_type'  => 'event', 
    'posts_per_page' => '1', 
    'meta_key'  => 'sponsored_event', 
    'meta_value' => 'yes' 
    ); 
    $the_query = new WP_Query($args); 
?>  
<?php if (have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?>   
<div class="sponsored-event"> 
<div class="sponsored-image" style="background-image: url(<?php the_field('event_image'); ?>);"></div> 
<div class="sponsored-info"> 
    <h2>Sponsored Event</h2> 
    <h1><strong><?php the_title(); ?></strong></h1> 
     <p><strong>Date</strong></p><br> 
     <p class="place"><?php the_field('event_location'); ?></p> 
     <p class="time"><?php the_field('event_time'); ?></p> 
     <p><?php the_field('excerpt'); ?></p> 
     </div> 
     </div>   
<?php endwhile; else: ?> 
<?php endif; ?> 

回答

0

這是對我工作:

<?php 

$args = array(
    'post_type' => 'event', 
    'showposts' => 1, 
    'orderby' => 'date', 
    'meta_query' => array(
      array(
      'key' => 'sponsored_event', 
      'value' => 1, 
      'compare' => 'LIKE' 
      ) 
     ) 
    ); 

    $the_query = new WP_Query($args); 
?> 

    <?php if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?> 


      <a href="<?php the_permalink(); ?>"><div class="sponsored-event"> 
       <div class="sponsored-image" style="background-image: url(<?php the_field('event_image'); ?>);"> 
       </div> 
       <div class="sponsored-info"> 
        <h2>Sponsored Event</h2> 
        <h1><strong><?php the_title(); ?></strong></h1> 
        <p><strong>Date</strong></p><br> 
        <p class="place"><?php the_field('event_location'); ?></p> 
        <p class="time"><?php the_field('event_time'); ?></p> 
        <p><?php the_field('excerpt'); ?></p> 
       </div> 
      </div></a> 


    <?php endwhile; else: ?> 

<?php endif; ?> 
0

嘗試使用meta_query做到這一點。喜歡的東西下面的更新您的$args

$args = array(
    'post_type'  => 'event', 
    'posts_per_page' => '1', 
    'meta_query' => array(
     array(
      'key'  => 'sponsored_event', 
      'compare' => 'LIKE', 
      'value' => 'yes', 
    ), 
    ), 
); 

您還需要更新if (have_posts())if ($the_query->have_posts())

更多有關meta_query可以在這裏找到:https://codex.wordpress.org/Class_Reference/WP_Meta_Query

+0

我已經在我的meta_query中嘗試了很多變化,沒有任何東西似乎工作。 – lbollu

+0

您的if語句也存在問題。查看更新的答案。 – mbacon40

0

而是同時使用post_per_page和數量的職位,你可以使用你選擇的任何一個

嘗試任何方法如下爲可用。根據ACF建議使用Method 1,但至於WordPress,您也可以根據Method 2檢索信息。

方法:1

$args = array(
    'posts_per_page' => 1, 
    'post_type'  => 'event', 
    'meta_key'  => 'sponsored_event', 
    'meta_value' => 'yes' 
); 
$the_query = new WP_Query($args); 
<?php if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?> 
//Your Code over here to Manipulate 
<?php endwhile; else: ?> 
<?php endif; ?> 

方法:2

嘗試元查詢與在meta_query比較爲=運營商。

$args = array(
    'post_type'  => 'event', 
    'posts_per_page' => '1', 
    'meta_query' => array(
     array(
      'key'  => 'sponsored_event', 
      'compare' => '=', 
      'value' => 'yes', 
    ), 
    ), 
); 
+0

嗨Naresh,我以前給過[一些反饋使用黃色報價塊作爲一般標題或作爲一個highligher框](https://stackoverflow.com/questions/39255026/show-post-if-true-false-is是的,先進的自定義字段/ 39255165#comment65846710_39255165)。我的評論有什麼不清楚的地方? – halfer

+0

@halfer。 Sorriee兄弟。此後,我將不會將其用於一般標題。請您在我的回覆中建議我在哪裏使用這些黃色熒光筆盒。 –

0

if (have_posts())應引用查詢:if ($the_query->have_posts())

此外,如前所述,您應該使用'posts_per_page' => 1,而不是numberposts

+0

這仍然不會輸出任何帖子。 – lbollu

0

我測試的代碼我的機器上,它工作正常!只是(因爲已經從別人提到)的if()說法是錯誤的,將其更改爲:

if ($the_query->have_posts()) 

但現在我有一個非常愚蠢的問題...創建ACF領域後,你有沒有保存的一些帖子(事件)與元領域(是或否)?如果沒有,WP不會找到任何東西,因爲postmeta沒有保存到數據庫中。

如果postmeta保存正確,你看了一下數據庫嗎?