我正在使用options framework
我无法理解为什么这不起作用
$x = of_get_option('post_number');
$content_post = get_post($x);
echo $content_post->post_excerpt;
非常奇怪,因为
echo of_get_option('post_number');
完美运作并输出数字
根据get_post,我的代码应该可行 然而,回声不会产生任何结果,甚至不会产生错误信息
所以我必须以某种方式错误地处理get_post(),任何线索?
修改
var dump http://pastebin.com/ZEgQ5WPn 显示post_content已满,但post_excerpt为空
如何重新制作摘录?
编辑[已解决]
我决定手写覆盖摘录,但我的选项丢失,然后我发现this
并使用
add_post_type_support( 'page', 'excerpt' );
手动编写摘录
答案 0 :(得分:27)
$text = apply_filters('the_excerpt', get_post_field('post_excerpt', $post_id));
答案 1 :(得分:3)
这将采用post_content并创建一个摘录。您可以将post_content替换为任何其他代码字符串。将55更改为另一个数字以增加返回的单词数量。
$excerpt = wp_trim_words ( strip_shortcodes( $recent["post_content"], 55 ) );
答案 2 :(得分:1)
您应该能够像这样使用get_post(),returns几乎所有内置的帖子属性都作为帖子对象的一部分。
<?php
$my_id = 7;
$my_post = get_post( $my_id );
$my_excerpt = $my_post->post_excerpt;
var_dump( $my_excerpt );
?>
如果失败了(它不应该,但也许你已经尝试了它的声音),可以结帐WP_Query并传递"p=$my_id"
作为参数。这可能是get_post引擎盖下使用的函数。
<?php
$my_id = 7;
$my_posts = new WP_Query( "p=$my_id" );
var_dump( $my_posts );
?>