2016-03-19 62 views
0

我正在使用WP_Query從自定義帖子類型獲取帖子以在metabox中使用結果。一切工作與我的查詢很好。但是在查詢之後,我無法從數據庫獲取其他元值。

這是我的輔助函數來獲取自定義字段值:

function my_page_get_custom_field($value) { 
    global $post; 

    $custom_field = get_post_meta($post->ID, $value, true); 
    if (!empty($custom_field)) 
     return is_array($custom_field) ? stripslashes_deep($custom_field) : stripslashes(wp_kses_decode_entities($custom_field)); 

    return false; 
} 

這裏是我的查詢:

$sliderArgs = array(
    'posts_per_page' => -1, 
    'post_type'   => 'slider', 
); 
$slider = new WP_Query($sliderArgs); 
if ($slider->have_posts()) { 
?> 
    <select name="slider" id="slider"> 
    $selectedSlide = my_page_get_custom_field('slider'); 
    while($slider->have_posts()){ 
     $slider->the_post(); 
     $slideID = get_the_ID(); 
     ?><option value="<?php echo $slideID; ?>" <?php selected($selectedSlide, $slideID, true); ?>><?php the_title(); ?></option><?php 
    } 
    wp_reset_postdata(); ?> 
    </select> 
} 

這是我返回空的其他自定義字段(有在數據庫中的值當我試圖改變它很好但不顯示在管理輸入值):

<input type="text" name="meta_title" id="meta_title" value="<?php echo my_page_get_custom_field('meta_title'); ?>"> 
+0

我相信這是你的問題:'posts_per_page'=> -1。你可以嘗試'posts_per_page'=> 1來代替嗎? –

+1

@LajosArpad不幸的是,它用於查詢所有帖子。 :) –

回答