对于自定义主题,编辑器希望能够在帖子编辑器中选择三种不同的字体大小。
我考虑使用标准字体大小并定义两个额外的类:
<p class="bigger">
 以及
<p class="smaller">
 因此,我在中定义了以下格式
tiny_mce_before_init:
$style_formats = array(
    array(
        \'title\'    => \'bigger paragraph\',
        \'block\' => \'p\',
        \'exact\'    => true,
        \'classes\'  => \'bigger\',
    ),
    array(
        \'title\'    => \'smaller paragraph\',
        \'block\' => \'p\',
        \'exact\'    => true,
        \'classes\'  => \'smaller\',
    ),
);
 格式确实会显示在“格式”下拉框中并执行操作。
不幸的是,它们可以一起选择,这会导致如下标记:
<p class="bigger smaller">
 我哪里做错了?
 
                    最合适的回答,由SO网友:josh 整理而成
                    您的代码工作正常。这个style_formats 过滤器允许您通过类名添加其他样式。一个元素有多个类(不限于两个)是完全有效的。
我已经和tinymce编辑合作多年了;我可以诚实地说,我不知道“确切的”论点到底有什么作用。我从来没有遇到过这样的情况,它会带来不同。但是,我可以肯定地说,它并没有限制html元素只有一个类。
如果您试图实现的是用户放大/缩小字体大小的方法;然后你应该重新考虑你的方法。我会制作两个新的编辑器按钮(可能是上下箭头);并编写代码来放大或缩小元素的字体大小。
或者,您可以创建三个新的编辑器按钮(每个字体大小一个),单击这些按钮时,会删除元素上的任何现有字体大小类,并添加新的。
总之,我不相信您当前的方法会将元素限制为单个类名。我会考虑一种新的方法。有很多文章详细介绍了如何添加新的编辑器按钮。