我正在使用Wordpress 4.9.8和TinyMCE Advanced 4.8.0
我似乎在任何地方都找不到答案,因此如果我错过了一些事情,可以提前申请。
我想在编辑器的下拉菜单中添加额外的字体大小。通过在插件设置中选择“字体大小”选项,并将选项添加到所需的大小中,我设法做到了 “ /wp-content/plugins/tinymce-advanced/tinymce-advanced.php ”文件如下:
private $fontsize_formats = '8px 10px 12px 13px 14px 16px 20px 24px 28px 32px 36px';
这很好用,但是将默认字体大小更改为16px(应该为12px)
还有另一种方法吗?
谢谢
答案 0 :(得分:0)
请在WordPress Stack Exchange上查看我的答案。为了透明起见,我将其移植到这里。
这是一种2部伙伴。上半部分将向您展示在编辑时如何在TinyMCE中更改样式。下半部分将向您展示如何从工具栏中删除内容。
WordPress为我们提供了一个名为add_editor_style()
的简洁小函数,它可以通过URL或相对路径来接受一系列样式表。 WordPress默认主题通常利用此功能,并且可以在最新的TwentySeventeen theme中看到。首先,让我们创建一个样式表。名称无关紧要,但位置无关。
body,
button,
input,
select,
textarea {
font-size: 16px;
}
为简单起见,我们将其称为editor-style.css
并将其保存在主题中:
/assets/css/editor-style.css
接下来,我们需要告诉WordPress使用我们的样式表,因此我们将打开主题functions.php
文件并添加:
/**
* Theme setup functionality
*
* @return void
*/
function prefix_theme_setup() {
// Relative path to the TinyMCE Stylesheet
add_editor_style( array( 'assets/css/editor-style.css' ) );
}
add_action( 'after_setup_theme', 'iqt_theme_setup' );
如果某些插件实现自己的TinyMCE,则可能会干扰这些插件,例如页面构建器。
接下来,我们可以使用tiny_mce_before_init
filter hook来修改TinyMCE。在这种情况下,如果要覆盖字体大小,我们需要做的所有事情。您可以将以下功能添加到functions.php
文件中:
/**
* Add Formats to TinyMCE
* - https://developer.wordpress.org/reference/hooks/tiny_mce_before_init/
* - https://codex.wordpress.org/Plugin_API/Filter_Reference/tiny_mce_before_init
*
* @param array $args - Arguments used to initialize the tinyMCE
*
* @return array $args - Modified arguments
*/
function prefix_tinymce_toolbar( $args ) {
$args['fontsize_formats'] = "8px 10px 12px 13px 14px 16px 20px 24px 28px 32px 36px";
return $args;
}
add_filter( 'tiny_mce_before_init', 'prefix_tinymce_toolbar' );
$args
数组具有一个索引,该索引接受由空格分隔的字体大小的列表。您可以将它们更改为所需的任何内容,px
,em
,rem
没关系,只是列表由空格分隔并且是有效的font-size
值。