大多数站长在编辑文章的时候都比较注意细节,格式都非常的规整,特别是在中文、英文、数字之间会用空格隔开,显得层次更加分明,整体排版更加美观,但——你以为他们是在编写文章的时候手动添加的空格吗?那样繁琐和降低写作效率的事,他们才不会干呢!
下面搜集网就说一下,这个是如何实现的。方法很简单,只要在当前主题 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 文章中英文数字间自动添加空格(不写入数据库)
https://www.simpsearch.com/2301556.html
以上两段代码实现的方式各有不同,效果基本一致,选其一使用即可。
没有回复内容