如何自定义WordPress摘要截取的字数?

avatar
作者
猴君
阅读量:0
在WordPress中,可以通过修改主题的 functions.php 文件来实现自定义摘要截取字数。以下是一个示例代码:,,``php,function custom_excerpt_length( $length ) {, return 40; // 设置摘要长度为40个字符,},add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );,`,,将上述代码添加到你主题的 functions.php` 文件中,即可将摘要长度限制为40个字符。你可以根据需要调整数字来改变摘要的长度。

在WordPress中,你可以使用内置的函数来自定义摘要截取字数,以下是一些步骤和代码示例:

如何自定义WordPress摘要截取的字数?

步骤1: 打开主题的functions.php文件

在你的WordPress主题文件夹中找到functions.php文件并打开它,如果没有这个文件,你可以创建一个。

步骤2: 添加自定义摘要截取函数

functions.php文件中,添加以下代码:

 function custom_excerpt_length( $length ) {     return 50; // 设置你想要的摘要字数 } add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

上述代码定义了一个名为custom_excerpt_length的函数,该函数返回一个整数值,表示你希望显示的摘要字数,在这个例子中,我们设置了摘要长度为50个字符,我们使用add_filter将这个函数添加到WordPress的excerpt_length过滤器上,优先级设置为999(最高优先级)。

步骤3: 更新你的帖子或页面

保存functions.php文件后,刷新你的WordPress后台,然后编辑任何帖子或页面,当你预览或发布这些内容时,摘要将会根据你在custom_excerpt_length函数中设置的长度进行截取。

相关问题与解答

问题1: 如果我想在不同的页面或文章中使用不同的摘要长度怎么办?

答案1: 你可以在custom_excerpt_length函数中添加逻辑来判断当前页面或文章的类型,并根据类型返回不同的摘要长度。

 function custom_excerpt_length( $length ) {     if ( is_front_page() ) {         return 100; // 首页摘要长度为100个字符     } elseif ( is_single() ) {         return 200; // 单篇文章摘要长度为200个字符     } else {         return 50; // 其他页面摘要长度为50个字符     } } add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

问题2: 如何确保摘要不会在单词中间被截断?

答案2: WordPress默认会在单词之间截断摘要,以避免截断单词,如果你确实需要避免这种情况,可以使用wp_trim_words函数来代替substr函数,如下所示:

 function custom_excerpt_length( $length ) {     return 50; // 设置你想要的摘要字数 } add_filter( 'excerpt_length', 'custom_excerpt_length', 999 ); function custom_excerpt($text) {     $raw_excerpt = $text;     if ( '' == $text ) {         $text = get_the_content('');         $text = strip_shortcodes( $text );         $text = apply_filters('the_content', $text);         $text = str_replace(']]>', ']]>', $text);         $text = strip_tags($text);         $excerpt_length = apply_filters('excerpt_length', 55);         $excerpt_more = apply_filters('excerpt_more', ' ' . '[...]');         $text = wp_trim_words( $text, $excerpt_length, $excerpt_more );     }     return apply_filters('wp_trim_excerpt', $text, $raw_excerpt); } remove_filter('get_the_excerpt', 'wp_trim_excerpt'); add_filter('get_the_excerpt', 'custom_excerpt');

这段代码首先获取原始的摘要文本,然后对其进行处理,确保不会在单词中间截断,它将处理后的摘要返回给WordPress系统。

以上内容就是解答有关“wordpress自定义摘要截取字数的代码”的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!