当前位置:首页>网站建设>WordPress文章中英文数字间自动添加空格

WordPress文章中英文数字间自动添加空格

释放双眼,带上耳机,听听看~!

作为一个资深编辑与撰稿人,也阅历了无数的站点,就科技类的站点来说给人印象是最好的,当然可以能因为本人喜好科技生活方式之类的东西,同样作为一个注意细节和力求极致的我来说,不难发现别人编辑的文章格式都非常的规矩,特别是在中文、英文、数字之间用空格隔开,观感和阅读上显得更加分明,也就是说整体的排版会更加的好看,但是如果在编写文章的时候去添加,就会显得特别的繁琐和降低编辑或写作效率了。今天分享个 WordPress 文章中英文数字间自动添加空格的代码,当时就用上了,没有想到效果竟然出奇的好。

WordPress 在当前主题 functions.php 里添加自定义代码是个很强大的存在,不废话了,继续话题,有两种实现方法,可以任选一种代码,放到主题根目录下的 functions 文件即可。

代码一

//WordPress 文章中英文数字间自动添加空格(写入数据库)
add_filter( 'wp_insert_post_data', 'fanly_post_data_autospace', 99, 2 );
function fanly_post_data_autospace( $data , $postarr ) {
	$data['post_title'] = preg_replace('/([x{4e00}-x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data['post_title']);
	$data['post_title'] = preg_replace('/([A-Za-z0-9_]+)([x{4e00}-x{9fa5}]+)/u', '${1} ${2}', $data['post_title']);
	$data['post_content'] = preg_replace('/([x{4e00}-x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data['post_content']);
	$data['post_content'] = preg_replace('/([A-Za-z0-9_]+)([x{4e00}-x{9fa5}]+)/u', '${1} ${2}', $data['post_content']);
	return $data;
}

以上代码的功能主要用于在 WordPress 后台编辑时执行,也就是当我们发布、更新、保存文章的时候就会自动执行,写入数据库的内容都将是自动添加了空格的,并且处理的对象为文章标题与文章内容。也就是说只对新发布的文章生效,当然你也可以批量的更新一下文章也是可以生效的。

欢迎访问秀主题博客,分享简单实用WP教程
//WordPress 文章中英文数字间自动添加空格(不写入数据库)
add_filter( 'the_content','fanly_post_content_autospace' );
function fanly_post_content_autospace( $data ) {
	$data = preg_replace('/([x{4e00}-x{9fa5}]+)([A-Za-z0-9_]+)/u', '${1} ${2}', $data);
	$data = preg_replace('/([A-Za-z0-9_]+)([x{4e00}-x{9fa5}]+)/u', '${1} ${2}', $data);
	return $data;
}

这样的方式就是当前端显示的内容时才会执行自动给中英文数字间添加空格,其它地方是不会别执行的,同时只针对文章内容生效,文章标题无法被格式化。

以上两段代码实现的方式各有不同,可以选其一使用,也可以两者同时使用,前者直接将格式化后的内容保存到数据库中,不论以何种方式调用或输出 WordPress 文章内容都已经是有空格了的。所以大家在选择和使用上记得先测试一下效果。我们认为比网上那些 WordPress 文章内容自动添加空格格式化的教程都更简单更实用,当然如果你用的不是 WordPress,相信你也可以通过以上代码中写的正则表达式替换来实现。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
网站建设

nginx伪静态规则阻止WordPress垃圾评论

2025-1-14 13:02:39

企业主题

Courtyard 免费WordPress旅游主题

2022-12-14 11:34:15

温馨提示:

1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:971318156@qq.com,我们将第一时间处理!

2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。

3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索