如何正确断行在 WordPress 中同时包含 CJK 和英文字符?

Posted

技术标签:

【中文标题】如何正确断行在 WordPress 中同时包含 CJK 和英文字符?【英文标题】:How to break lines properly which contain both CJK and english characters in WordPress? 【发布时间】:2017-04-26 12:49:03 【问题描述】:

我发现我的 wordpress4.7 中的 CJK 文章无法正确换行,其中包含 CJK 和英文字符。 这是发表前的文章。

所有行在发布前都已正确中断。

现在发布后显示如下。 所有行都乱七八糟,格式不正确,出乎意料。

我曾试图以这种方式修复它。

vim  /var/www/html/wp/wp-content/themes/twentysixteen/style.css 
.site-inner 
    margin: 0 auto;
    max-width: 1320px;
    position: relative;


.site-content 
    word-wrap: break-word;overflow:hidden;
    word-break:break-all;white-space:pre-wrap;

重启apache和wordpress,完全没有效果。 我的wordpress版本是4.7,主题是二十六。

【问题讨论】:

【参考方案1】:

尝试将此代码添加到您的functions.php主题文件中

    function my_tinymce_fix( $init )
    
        // html elements being stripped
        $init['extended_valid_elements'] = 'div[*], article[*]';

        // don't remove line breaks
        $init['remove_linebreaks'] = false;

        // convert newline characters to BR
        $init['convert_newlines_to_brs'] = true;

        // don't remove redundant BR
        $init['remove_redundant_brs'] = false;

        // pass back to wordpress
        return $init;
    
    add_filter('tiny_mce_before_init', 'my_tiny_mce_fix');

【讨论】:

【参考方案2】:

试试 wordpress 插件。 TinyMCE Advanced

有选项可以禁用从插件设置页面中自动删除 br 标签和 p 标签。

【讨论】:

【参考方案3】:

安装Don't Muck My Markup

Don't Muck My Markup 是一个插件,可让您

逐页禁用所有从您的帖子和页面自动生成的 HTML 标记

它在默认的 WordPress 编辑器中添加了一个小框以关闭 自动标记/格式化 该页面/帖子

这意味着可以保持所有其他页面相同,并且仅为您当前正在编辑的页面/帖子禁用自动格式化

那么,

当您的页面/帖子包含混合内容时,请禁用该页面/帖子的自动格式化并手动添加 html 标记,例如 <h1> <br> <hr> <p> 等等

【讨论】:

以上是关于如何正确断行在 WordPress 中同时包含 CJK 和英文字符?的主要内容,如果未能解决你的问题,请参考以下文章

WordPress 插件开发 - 如何使用 JQuery / JavaScript?

从另一台机器访问 wordpress 站点

如何在 Wordpress 插件中正确重定向?

如何在 makefile 指令中同时包含 C 和 C++ 文件

如何在wordpress中使用mysql事务?

javascript 如何在WordPress中正确排队jQuery