wordpress显示post incorect进入我的插件的时间

时间:2013-08-02 16:22:17

标签: wordpress

我创建一个小部件,显示丘疹和最近的帖子,但那显示所有的时间2013 08 02什么问题? 那些显示正确的wp_query bu显示更多额外的字符串我不能清楚。

function posts($sort = 'recent', $items = 3, $echo = TRUE, $bg_color = 'black') 

{     $ return_html ='';

if($sort == 'recent')
{
    $posts = get_posts('numberposts='.$items.'&order=DESC&orderby=date&post_type=post&post_status=publish');
    $title = __('Recent Posts', THEMEDOMAIN);
}
else
{
    global $wpdb;

    $query = "SELECT ID, post_title, post_content FROM {$wpdb->prefix}posts WHERE post_type = 'post' AND post_status= 'publish' ORDER BY comment_count DESC LIMIT 0,".$items;
    $posts = $wpdb->get_results($query);
    $title = 'Popular Posts';
}

if(!empty($posts))
{

    $return_html.= '<h2 class="widgettitle">'.$title.'</h2>';
    $return_html.= '<ul class="posts blog '.$bg_color.'_wrapper">';

    $count_post = count($posts);

        foreach($posts as $post)
        {
            $image_thumb = get_post_meta($post->ID, 'blog_thumb_image_url', true);
            $return_html.= '<li>';

            if(has_post_thumbnail($post->ID, 'large'))
            {
                $image_id = get_post_thumbnail_id($post->ID);
                $image_url = wp_get_attachment_image_src($image_id, 'thumbnail', true);

                $return_html.= '<a href="'.get_permalink($post->ID).'"><img class="alignright frame" src="'.$image_url[0].'" alt="" /></a>';
            }

            $return_html.= '<strong class="title"><a href="'.get_permalink($post->ID).'">'.$post->post_title.'</a></strong><br/><span class="post_attribute">'.get_the_time('F j, Y', $post->ID).'</span>';
            $return_html.= '</li>';

        }   

    $return_html.= '</ul>';
谁能帮助我吗? 抱歉我的英语不好。

1 个答案:

答案 0 :(得分:0)

来自WP Documentation

  

get_the_time返回当前帖子在PHP中使用的时间。它   不显示时间。要显示帖子的时间,请使用   时间()。此标记必须在The Loop中使用。

所以我想你想用the_time('F j, Y')


修改:尝试将此行添加为foreach循环中的第一行:

setup_postdata( $post );