WordPress文章和标题中英文数字间自动添加空格雅幽5个月前更新关注私信0441 推荐:运营商正规大流量卡 免费包邮! 很多站长在编辑文章的时候比较注意细节和力求极致,发现别人编辑的文章格式都非常的有规矩,特别是在中文、英文、数字之间用空格隔开,观感和阅读上显得更加分明,整体的排版更加的好看,但是如果在编写文章的时候手动去添加,会显得特别的繁琐和降低写作效率了。 网上已经有很多人分享了 WordPress 实现中英文数字之间自动添加空格排版的方法,什么添加 php 代码,引入 js 文件,还有添加 css 代码,看着就头疼,太麻烦了,所以博主这里提供一个极简的方法来实现这样的一个排版个功能。方法很简单,在当前主题 functions.php 文件中添加以下代码即可: 方法 1:WordPress 文章中英文数字间自动添加空格(写入数据库) //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 后台编辑时执行,也就是当我们发布、更新、保存文章的时候就会自动执行,写入数据库的内容都将是自动添加了空格的,并且处理的对象为文章标题与文章内容。也就是说只对新发布的文章生效,当然你也可以批量的更新一下文章也是可以生效的。 当然为了更加良好的兼容性或者另外一种方法,博主还提供了另外一种方法,就是不直接在写入数据库前执行,而是当 WordPress 输出文章内容的时候执行,代码如下: 方法 2:WordPress 文章中英文数字间自动添加空格(不写入数据库) //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; } 以上两段代码实现的方式各有不同,可以选其一使用,也可以两者同时使用。有的朋友要说了,怎么什么修改都要加入到主题的 functions.php 文件当中啊!我的主题只要一更新,这些修改的代码就没有了啊?太麻烦! 不要着急!其实还有一个办法,不用写入到 functions.php 文件中,就是将以上两段代码制作成小插件即可!这样就不怕以后主题更新了。至于嫌插件安装太多影响 WordPress 的速度,这里就根据自己需求选择吧,效果都是一样的。 来源详情 温馨提示:本文最后更新于2024-06-18 19:19:30,某些文章具有时效性,若有错误或已失效,请在下方留言或联系雅幽资源网。------本页内容已结束,喜欢请分享------ 感谢您的来访,获取更多精彩文章请收藏本站。 © 版权声明 本站收集的资源仅供内部学习研究软件设计思想和原理使用,学习研究后请自觉删除,请勿传播,因未及时删除所造成的任何后果责任自负。 如果用于其他用途,请购买正版支持作者,谢谢!若您认为「BLOG.BEICB.TOP」发布的内容若侵犯到您的权益,请联系站长邮箱:1026866560@qq.com 进行删除处理。 本站资源大多存储在云盘,如发现链接失效,请联系我们,我们会第一时间更新。 文章版权归作者所有,未经允许请勿转载。THE ENDWordPress建站笔记# WordPress# 子比主题 喜欢就支持一下吧点赞1 分享QQ空间微博QQ好友海报分享复制链接收藏