修改我的代码-它接受POST的第一句话并将其用作h2标记-以在循环之外工作

时间:2011-09-21 作者:webmasters

我的代码接受帖子的第一句话,并将其内容放在一个变量中。问题是它只在循环内部工作。

我需要帮助在循环之外编写此代码,因为我想在标题中使用posts first sentace作为描述。php

这是:

<? ob_start();
the_content();
$old_content = ob_get_clean();
$content = strip_tags($old_content);
$match = null;
preg_match(\'/(.*?[?\\.!]{1,3})/\', $content, $match);  
$first_sentence = $match[1];   
$the_rest = substr($content, strlen($first_sentence)); 
if ( $first_sentence != \'\' && $the_rest != \'\' ){
   echo \'<h2>\'.$first_sentence.\'</h2>\';
   echo \'<p>\'.$the_rest.\'</p>\';
} ?>
还有一件事,最好在这段代码中保持帖子的格式。有什么主意吗?我怎么能做到?

太好了,保重!

1 个回复
最合适的回答,由SO网友:Wyck 整理而成

要在常规循环之外获取帖子信息,可以使用WP Query Reference

在您的示例中,您可以尝试以下操作:;

$firstsentance = new WP_Query();
$firstsentance->query(\'posts_per_page=-1\');  // add additional  query parameters as needed, this will query all posts
$old_content = the_content()\';

//do your php stuff here

endwhile; 

结束

相关推荐

WP_SET_OBJECT_TERMS超时?

我有一个大约350个术语的列表,我正试图设置为一个职位。这是我的代码:add_action(\'init\', \'add_cities_to_story\'); function add_cities_to_story() { $cities_list = get_term_children(\'115\', \'location\'); // MA wp_set_object_terms(\'632\', $cities_list, \'location\')