当前位置: 首页 > news >正文

用wp_trim_words函数实现WordPress截断部分内容并保持英文单词完整性

在WordPress中,wp_trim_words函数用于截断字符串并限制单词数量。如果你希望在截断时保持单词的完整性(让单词显示全),可以通过自定义函数来实现。

以下是一个示例代码,展示如何修改你的代码以确保截断时显示完整的单词:

function custom_trim_content($content, $num_words = 360, $more = '') {$content = wp_strip_all_tags($content);$content = apply_filters('the_content', $content);$content = str_replace(']]>', ']]>', $content);// Split the content into words$words = explode(' ', $content);// Trim the content to the specified number of words$trimmed_content = array_slice($words, 0, $num_words);// Join the words back into a string$trimmed_content = implode(' ', $trimmed_content);// Check if the content was trimmedif (count($words) > $num_words) {$trimmed_content .= $more;}return $trimmed_content;
}// Usage
$trimmed_content = custom_trim_content($post->post_content, 360, '');
echo $trimmed_content;

代码说明

wp_strip_all_tags和apply_filters:

wp_strip_all_tags用于移除HTML标签。

apply_filters用于应用WordPress的过滤器,确保内容经过所有必要的处理。

explode:

将内容按空格分割成单词数组。

array_slice:

截取数组中的前$num_words个单词。

implode:

将截取后的单词数组重新组合成字符串。

$more:

如果内容被截断,可以在末尾添加自定义的字符串,例如“…”。

使用方法

将上述代码添加到你的主题的functions.php文件中,然后在需要的地方调用custom_trim_content函数即可。

这样,你就可以确保在截断内容时不会截断单词,而是显示完整的单词。

原文

http://wordpress.waimaoyes.com/jianzhan/158.html

http://www.dtcms.com/a/351153.html

相关文章:

  • Ansible 文件管理与 Jinja2 模板全解析:从模块应用到动态配置生成
  • Ansible核心技巧:循环条件与错误处理
  • nginx代理 flink Dashboard、sentinel dashboard的问题
  • HarmonyOS之深入了解装饰器
  • 服务器初始化流程***
  • Rust 符号体系全解析:分类、应用与设计意图
  • CentOS 7 升级 OpenSSL 3.5.1 的详细教程
  • 【Linux】Socket编程——TCP版
  • 【Python】shutil.make_archive() 方法详解
  • 支持向量机(SVM)核心原理与应用解析
  • SOME/IP-SD规范中,对 服务(Service) 和 实例(Instance)的理解
  • 多模态RAG架构:下一代跨模态智能检索系统的设计与实践
  • 机器视觉学习-day03-灰度化实验-二值化和自适应二值化
  • 使用C++与Qt6,在windows上打造MacOS风格桌面应用窗口
  • PDF文件中的相邻页面合并成一页,例如将第1页和第2页合并,第3页和第4页合并
  • Mac测试端口连接的几种方式
  • 如何将视频从安卓设备传输到Mac?
  • Mac安装mitmproxy及操作对监控的请求
  • 少儿舞蹈小程序详细设计文档
  • Mac中修改Word的Normal.dotm文件
  • 使用Uniapp开发小程序,如何引入插件组件!
  • 三电平buckboost电路出现上下母线不平衡是什么原因
  • Linux驱动开发笔记(八)——按键输入实验
  • 滚珠导轨如何定义半导体制造精度?
  • 【LeetCode 热题 100】75. 颜色分类——双指针
  • 算法题打卡力扣第209题:长度最小的子数组(mid)
  • 计算神经科学数学建模编程深度前沿方向研究(中)
  • AbMole小课堂丨Lenvatinib(E7080):如何通过靶向多靶点抑制VEGFR/FGFR/PDGFRα抑制肿瘤?
  • 【vue eslint】报错:Component name “xxxx“ should always be multi-word
  • LeetCode 100 -- Day6