1

以下の関数は、カスタム ボタンを TinyMCE に追加するために使用しています。「ビジュアル」モードでは、ボタンは正常に表示されます。ただし、「テキスト」モードに切り替えると、それらが表示されません。

以下のスクリプトでは、rich_editing モードをフィルター処理する行をコメントアウトしています。私は何が欠けていますか?

function addbuttons() {
    global $page_handle;

    // Don't bother doing this stuff if the current user lacks permissions
    if ( !current_user_can('edit_posts') && !current_user_can('edit_pages') )
        return;

    // Add only in Rich Editor mode
    //if ( get_user_option('rich_editing') == 'true') {
        $svr_uri = $_SERVER['REQUEST_URI'];
        if ( strstr($svr_uri, 'post.php') || strstr($svr_uri, 'post-new.php') || strstr($svr_uri, 'page.php') || strstr($svr_uri, 'page-new.php') || strstr($svr_uri, $page_handle) ) {
            add_filter("mce_external_plugins", array (&$this, 'add_tinymce_plugin' ), 5);
            add_filter('mce_buttons', array (&$this, 'register_button' ), 5);
            add_filter('mce_external_languages', array (&$this, 'add_tinymce_langs_path'));
        }
    //}
}

function register_button($buttons) {
    array_push($buttons, 'separator', 'nextpage' , 'CustomCodes' );
    return $buttons;
}

function add_tinymce_plugin($plugin_array) {
    $plugin_array['CustomCodes'] =  $this->path . 'plugins/custom/editor_plugin_src.js';
    return $plugin_array;
}


function add_tinymce_langs_path($plugin_array) {
    // Load the TinyMCE language file
    $plugin_array[$this->pluginname] = CB_ADMIN . '/tinymce/langs.php';
    return $plugin_array;
}
4

0 に答える 0