You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中如何显示剔除摘要后的文章内容并设置字数

WordPress 剔除摘要后显示剩余内容并限制字数方案

核心逻辑

先获取文章的摘要与完整内容,通过字符串处理移除内容中的摘要部分,再对剩余内容做指定字数的截取,同时处理空白字符、格式标签等可能导致匹配失败的问题。

具体实现代码

可以直接在模板文件中使用以下代码,或者将自定义函数添加到主题的functions.php中复用:

<?php
// 获取纯文本格式的摘要与完整内容(避免HTML标签干扰匹配)
$excerpt = trim(strip_tags(get_the_excerpt()));
$full_content = trim(strip_tags(get_the_content()));

// 统一处理空白字符,确保匹配准确性
$excerpt_clean = preg_replace('/\s+/', ' ', $excerpt);
$content_clean = preg_replace('/\s+/', ' ', $full_content);

// 定位摘要在内容中的位置并截取剩余部分
$excerpt_position = strpos($content_clean, $excerpt_clean);
if ($excerpt_position !== false) {
    $remaining_content = substr($content_clean, $excerpt_position + strlen($excerpt_clean));
    $remaining_content = trim($remaining_content);
} else {
    // 若摘要未在内容中匹配到,直接使用完整内容做后续处理
    $remaining_content = $content_clean;
}

// 设置字数限制(示例为150字),自动添加省略号
$word_limit = 150;
$trimmed_content = wp_trim_words($remaining_content, $word_limit, '...');

// 输出最终处理后的内容
echo $trimmed_content;
?>

注意事项

  • 使用strip_tags()清理HTML标签,避免因摘要或内容含标签导致匹配失败;
  • wp_trim_words()是WordPress内置函数,会自动处理标签闭合问题,比原生substr更适合处理文章内容;
  • 如果是手动编辑的摘要(与内容开头文本不匹配),上述代码会触发else分支,直接使用完整内容做字数限制,可根据需求调整分支逻辑。

内容的提问来源于stack exchange,提问作者Ishita Ray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 11:10:57