get_post_meta没有返回短代码中的任何内容

时间:2013-11-19 20:44:01

标签: wordpress custom-post-type shortcode

我正在尝试通过短代码向我的页面添加一组推荐(自定义后期类型)。短代码(如下所示)在页面上输出,它从创建的4个推荐书中拉出4个条目......但是get_post_meta没有返回任何内容。不确定是否有一些我不知道通过短代码处理帖子数据的事情。有什么想法吗?

网站已发布在penderair.yourbrandstronger.com

<?php

/* Testimonial shortcode */

if (!function_exists('ybs_testimonials')) {
function ybs_testimonials() {

$html = '<ul class="testimonials">';

    $testimonials_arguments = array(
                                    'post_type' => 'testimonial',
                                    'posts_per_page' => 5
                                   );

    $testimonials_query = new WP_Query( $testimonials_arguments );

    if ( $testimonials_query->have_posts() ) 
    {                                                                                               
        while ( $testimonials_query->have_posts() ) :                                               
        $testimonials_query->the_post();
        $testimonial_content = get_post_meta($post->ID,'the_testimonial', true);
        $testimonial_author = get_post_meta($post->ID,'testimonial_author', true);                                                      
            $html .= '<li>';

                if ( has_post_thumbnail() )
                {       
                    $html .= '<div class="imgbox">' . the_post_thumbnail('testimonial-thumb') . '</div>';                           
                }

                $html .= '<div class="detail">
                        <blockquote>
                                <p>' . $testimonial_content . '</p>
                        </blockquote>
                        <p class="author">' . $testimonial_author . '</p>
                </div>                                                                                                             
            </li>';                                                                                                                                                                                                                                                                                                                  
        endwhile;                                                           
    }                                                                                                                                                                                                                       
    $html .= '</ul>';

return $html;
}
}
add_shortcode('ybs_testimonials', 'ybs_testimonials');

1 个答案:

答案 0 :(得分:0)

抱歉,问题解决了。只需要在我的get_post_meta调用中更改:$ post-&gt; ID到get_the_ID()。