从 WordPress TinyMCE 编辑器中删除按钮和冷门功能

有时客户认为他们是设计师,并且非常希望所有东西都是可以随意显示或者隐藏的,再有一些用不到的功能也会询问我如何使用,其实WordPress文本编辑器有些功能我部门极少会使用,我建议把常用的居中、对齐、字体加粗等功能保留就可以,其他我们可以进行隐藏,这样对客户操作起来而言,会更方便一些。这是精简 WordPress TinyMCE 编辑器之后的效果。

/**
 * 从编辑器的第一行删除按钮
 *
 * @link     http://thestizmedia.com/remove-buttons-items-wordpress-tinymce-editor/
 *
 * @param    array    $buttons    默认的按钮数组
 * @return   array                排除某些项目的更新的按钮数组
 */
add_filter( 'mce_buttons', 'jivedig_remove_tiny_mce_buttons_from_editor');
function jivedig_remove_tiny_mce_buttons_from_editor( $buttons ) {

    $remove_buttons = array(
        'bold',
        'italic',
        'strikethrough',
        'bullist',
        'numlist',
        'blockquote',
        'hr', // 水平线
        'alignleft',
        'aligncenter',
        'alignright',
        'link',
        'unlink',
        'wp_more', // 阅读更多链接
        'spellchecker',
        'dfw', // 无干扰写作模式
        'wp_adv', // adv开关(如果移除,始终显示)
    );
    foreach ( $buttons as $button_key => $button_value ) {
        if ( in_array( $button_value, $remove_buttons ) ) {
            unset( $buttons[ $button_key ] );
        }
    }
    return $buttons;
}

/**
 * 从文本编辑器的第二行中删除按钮
 *
 * @link     http://thestizmedia.com/remove-buttons-items-wordpress-tinymce-editor/
 *
 * @param    array    $buttons    默认按钮阵列
 * @return   array                排除某些项目的更新的按钮数组
 */
add_filter( 'mce_buttons_2', 'jivedig_remove_tiny_mce_buttons_from_kitchen_sink');
function jivedig_remove_tiny_mce_buttons_from_kitchen_sink( $buttons ) {

    $remove_buttons = array(
        'formatselect', // 格式下拉菜单为 <p>, 标题等
        'underline',
        'alignjustify',
        'forecolor', // 文字颜色
        'pastetext', // 粘贴为文本
        'removeformat', // 清除格式
        'charmap', // 特殊的角色
        'outdent',
        'indent',
        'undo',
        'redo',
        'wp_help', // keyboard shortcuts
    );
    foreach ( $buttons as $button_key => $button_value ) {
        if ( in_array( $button_value, $remove_buttons ) ) {
            unset( $buttons[ $button_key ] );
        }
    }
    return $buttons;
}

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注