2013-08-17 35 views
0

你好我正在一个wordpress主题上,并且没有一个函数来返回上次发布的帖子的信息。 我的功能至今:无法获得一个php数组键的值来显示

function get_last_post() 
{ 

    $latest_post = new WP_Query("post_type=post&posts_per_page=1&orderby=date&order=DESC&post_status=publish"); 
    if($latest_post->have_posts()) 
    { 
     reset($latest_post); 
     $cur = current($latest_post); 

     var_dump($cur); 
     //var_dump($cur['']); 
     $ret['title'] = $cur['post_title']; 
     $ret['content'] = $cur['post_content'];; 
     $ret['link'] = get_permalink($cur['ID']); 
    } 
    else { 
     $ret['title'] = _e('Ni objav', 'responsive'); 
     $ret['content'] = _e('ni novih objav', 'responsive'); 
     $ret['link'] = ''; 
    } 
return $ret; 
} 

的问题是,我不能让从阵列中的信息。我知道总的新手,但裸露在我身边我相对较新的PHP,我不经常这样做。

,如果我的var_dump数组var_dump($cur);的信息我whan't是有,但似乎无法能够抓住它,如果我这样做var_dump($cur['post_title'])返回NULL也没在网络上找到任何有用的这一点。

希望你们可以帮忙。

解决办法:

function get_last_post() 
{ 

    $latest_post = new WP_Query("post_type=post&posts_per_page=1&orderby=date&order=DESC&post_status=publish"); 
    if($latest_post->have_posts()) 
    { 
     $cur = $latest_post->posts; 
     $cur = $cur[0]; 


     $ret['title'] = $cur->post_title; 
     $ret['content'] = $cur->post_content;; 
     $ret['link'] = get_permalink($cur->ID); 
    } 
    else { 
     $ret['title'] = _e('Ni objav', 'responsive'); 
     $ret['content'] = _e('ni novih objav', 'responsive'); 
     $ret['link'] = ''; 
    } 
return $ret; 
} 
+0

你能否从'的var_dump(CUR $)添加输出;'好吗? – andrewsi

+1

因此,当你使用'var_dump($ cur)'时,数组键存在并有一个值,但直接使用'$ cur ['post_title']'访问键返回null?请分享'var_dump($ cur)'的输出。 – BenM

+0

谢谢你的帮助有时候,有点新鲜空气有助于思考:)以上是我的解决方案我没有注意到,我得到一个数组与对象内的数组。解决方案在我的问题 – Jester

回答

0

经过一番思考,我想出了这个。感谢您投入的所有时间。

解决办法:

function get_last_post() 
{ 

    $latest_post = new WP_Query("post_type=post&posts_per_page=1&orderby=date&order=DESC&post_status=publish"); 
    if($latest_post->have_posts()) 
    { 
     $cur = $latest_post->posts; 
     $cur = $cur[0]; 


     $ret['title'] = $cur->post_title; 
     $ret['content'] = $cur->post_content;; 
     $ret['link'] = get_permalink($cur->ID); 
    } 
    else { 
     $ret['title'] = _e('Ni objav', 'responsive'); 
     $ret['content'] = _e('ni novih objav', 'responsive'); 
     $ret['link'] = ''; 
    } 
return $ret; 
} 
0

要得到你要找的文章的细节,你可以这样做:

$latest_query = new WP_Query("post_type=post&posts_per_page=1&orderby=date&order=DESC&post_status=publish"); 

if($latest_post->have_posts()) { 
    $latest_post->the_post(); 
    .... 

然后你可以在的细节发布常规WordPress功能:

echo "<h1>" . get_the_title() . "</h1>"; 

等等。

+0

我知道我可以这样做,但我已经拿到了一个函数 – Jester

+0

你可以将上面的代码包装在一个函数中 - 你只需要替换现有的代码。 – andrewsi

+0

我知道只是想从数组中取回数组,然后在别的东西中使用它而不是直接显示它 – Jester