删除句点后的两个空格

时间:2012-12-06 作者:Amanda Duke

我运行一个多作者平台,有1000多名作者。大多数用户从外部编写内容(Microsoft Word、OpenOffice等),并将其粘贴到可视化编辑器中。大约20%的文章在每个句点后都有一个双空格。

用户的反馈告诉我,这些程序的某些版本在句号后添加了两个空格,而不是一个空格。我最初将这些用户链接到如何在外部应用程序本身中解决这一问题的教程,但是平台的增长使这成为一项令人费解的任务。

Is there a way to remove all double spaces and convert them into single space on the post page? 可能在单击“发布”时。如果它发生在后端的帖子页面而不是前端(通过一些样式调整),那将是理想的——尽管我对想法持开放态度。

就我个人而言,考虑到至少20%的作者都在体验这一功能,我发现这一功能并不是Wordpress核心功能的一部分,这一点非常令人惊讶。

2 个回复
SO网友:fuxia

我无法提供JavaScript解决方案,因为我不确定这到底发生在哪里。

但是…我们可以wp_insert_post_data 并用PHP解决此问题:

add_filter( \'wp_insert_post_data\', \'t5_strip_double_spaces\', 20 );

function t5_strip_double_spaces( $data )
{
    $data[\'post_content\'] = preg_replace(
        "~( \\x{C2}\\x{A0}|\\x{C2}\\x{A0} )~m",
        \' \',
        $data[\'post_content\']
    );
    return $data;
}
作为plugin on GitHub.

SO网友:Alex Lane

将此添加到functions.php 文件

<?php

function my_the_content_filter ($content)
{
    str_replace(\'.  \', \'. \', $content);

    return $content;
}

add_filter(\'the_content, \'my_the_content_filter\');
这应该会起作用。希望有帮助!

Codex Page for Reference

结束

相关推荐

My posts show 2 comment forms

我们有一个Wordpress网站,lifering.org, 在戈达迪主持。我们最近升级了虚拟服务器的Linux操作系统,这涉及到从备份重建站点。现在,我们的单篇帖子显示了两个评论回复表单。我相信我们之前每个帖子只有一个评论回复表。我不知道这是怎么发生的-我自己做了备份-或者如何修复它。