从自定义帖子类型生成摘录以显示在小部件中

时间:2016-11-12 作者:JonHerbert

我试图在标题小部件中显示最近的两篇文章摘录。其中一些帖子将是常规博客帖子,另一些则是自定义帖子类型,还使用了高级自定义字段插件。自定义帖子有4个字段,其中一个是内容的所见即所得文本区域,我需要从中生成摘录。

我已经注册了“摘录”作为支持,在自定义帖子类型上,它显示为空,可以手动输入,但我不希望我的客户必须手动编写我希望它从内容生成的摘录,因为普通帖子似乎可以很好地处理任何基本的摘录小部件。

我已经试用了许多小部件,它们说它们提供了自定义帖子类型摘录功能,包括ACF最近的帖子小部件,它应该可以做我想要的事情。我似乎也无法在他们的支持论坛上找到解决方案。

关键是,我似乎缺少了使用自定义字段内容从自定义帖子中生成摘录的方法——有没有办法做到这一点?

我应该注意到,我对wordpress和php相对较新,如果这是显而易见的或构造不良的,那么很抱歉。如果有帮助的话,我很乐意提供我的任何代码——只是不确定在这里复制什么,因为这是一个涉及自定义帖子类型和ACF插件的一般性问题。

谢谢你的帮助!

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

SOLVED

在函数中使用此代码。php文件

function custom_field_excerpt() {
global $post;
$text = get_field(\'description\'); //Replace \'your_field_name\'
if ( \'\' != $text ) {
    $text = strip_shortcodes( $text );
    $text = apply_filters(\'the_content\', $text);
    $text = str_replace(\']]>\', \']]>\', $text);
    $excerpt_length = 20; // 20 words
    $excerpt_more = apply_filters(\'excerpt_more\', \' \' . \'[...]\');
    $text = wp_trim_words( $text, $excerpt_length, $excerpt_more );
}
return apply_filters(\'the_excerpt\', $text);
}
然后使用标头中的所有post类型在自定义WP\\U查询中调用该函数,并调用WP\\U reset\\U postdata();当你做了,而不是使用一个小部件!

相关推荐