将自定义字段修剪为一定长度

时间:2012-05-28 作者:Stewarty

我通过高级自定义字段插件添加了一个自定义字段。我正在尝试将字段的内容缩减到一个固定的字数。我曾尝试使用摘录过滤器并设置自定义长度,请参见下面的代码,但它不起作用,我想?

// set the length of the excerpt
function custom_excerpt_length( $length ) 
    {
    return 20;
    }

add_filter( \'excerpt_length\', \'custom_excerpt_length\', 999 );

// apply the filter and strip crap from \'description\'
// http://codex.wordpress.org/Function_Reference/the_content
$content = apply_filters(\'the_excerpt\', get_field(\'description\'));
$content = str_replace(\']]>\', \']]>\', $content);

echo $content;

//echo wp_trim_excerpt($content);
我还尝试了wp\\u trim\\u except()函数,但它也没有任何作用。这篇文章的整个篇幅都在重复。

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

The excerpt 是WordPress中的一个特定字段,与自定义字段完全无关,这就是为什么您尝试的摘录内容没有效果。

没有内置的方法来修剪自定义字段,您必须使用一些php手动完成:

$length = 20;
$text = \'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec diam enim, egestas ut facilisis sit amet, semper sed turpis. Phasellus dolor nisl, pretium non imperdiet nec, cursus quis turpis. Duis sed lorem tortor, a gravida magna. Integer commodo cursus ante, non varius odio aliquam quis. Aenean tincidunt congue ultricies. Donec ut orci vel ante laoreet bibendum. Aliquam vitae erat arcu. Nam et mi nunc. Proin sed lorem ac odio vestibulum blandit sit amet id dolor. Sed in augue id massa feugiat convallis.\';
$words = explode(\' \', $text);
array_splice($words, $length);
$text = implode(\' \', $words);
echo $text;

结束

相关推荐

Automatic excerpts

如何在主页中显示摘要而不是自动显示全文,无需插入<!--more--> 在每个帖子里?我尝试了这个插件http://wordpress.org/extend/plugins/advanced-excerpt/ 要么不起作用,要么我不能用。下面是我如何配置它http://wordpress.org/support/topic/plugin-advanced-excerpt-doesnt-work-installed-by-instructions-url-included?replies=1#p