it-swarm.com.de

So lösen Sie die Verknüpfung des Rich Text Editors mit benannten Textarea-Elementen

Das folgende Skript stammt aus einem Plugin, das alle Textbereiche in den Kategorie- und Tag-Editoren in Rich-Text-Editoren konvertiert.

Ich verwende es, um das Eingabefeld der Kategorie "Beschreibung" in Rich-Text zu konvertieren. Ich habe jedoch einen anderen Textbereich auf demselben Bearbeitungsbildschirm (einen, den ich als benutzerdefiniertes Feld hinzugefügt habe), für den Rich Text nicht aktiviert werden soll. Das Plugin wendet jedoch Rich-Text auf alle Bearbeitungsfelder an.

Kann mir jemand anhand des folgenden Codes sagen, wie man eines der folgenden Verfahren ausführt:

Rich Text in einem Textbereich mit der ID "myTextarea" deaktivieren?

OR

Wenden Sie den Rich-Text nur auf den Textbereich Kategorie "Beschreibung" an und nicht auf andere? (bevorzugt)

add_action('init', 'catde_init');
function catde_init() {
    if ( is_admin() || defined('DOING_AJAX') ) {
        if ( current_user_can('manage_categories') )
            remove_filter('pre_term_description', 'wp_filter_kses');
    }
}

add_action('load-categories.php', 'catde_admin_init');
add_action('load-edit-tags.php', 'catde_admin_init');
function catde_admin_init() {
    if ( user_can_richedit() && isset($_GET['action']) && 'edit' === $_GET['action'] && ( !empty($_GET['cat_ID']) || ( !empty($_GET['taxonomy']) && !empty($_GET['tag_ID']) ) ) ) {
        add_filter( 'tiny_mce_before_init', 'catde_mceinit');
        add_action('admin_footer', 'wp_tiny_mce');
        add_action('admin_head', 'catde_head');
    }
}

function catde_mceinit($init) {

    $init['mode'] = 'textareas';
    $init['editor_selector'] = '';
    $init['elements'] = 'category_description,description';
    $init['plugins'] = 'safari,inlinepopups,autosave,spellchecker,paste,wordpress,media,fullscreen';
    $init['theme_advanced_buttons1'] .= ',image';
    $init['theme_advanced_buttons2'] .= ',code';
    $init['onpageload'] = '';
    $init['save_callback'] = '';

    return $init;
}

function catde_head() { ?>
    <style type="text/css">#category_description_tbl,#description_tbl{border:1px solid #dfdfdf;}.wp_themeSkin .mceStatusbar{border-color:#dfdfdf;}</style>
<?php
}
3
Scott B

Momentan sagen Sie, dass alle Textbereiche auf der Seite ausgewählt werden sollen, sodass Änderungen erforderlich sind

$init['mode'] = 'textareas'; zu $init['mode'] = 'specific_textareas' oder $init['mode'] = 'exact' und benennen Sie den Textbereich nach der ID, für die Sie $init['elements'] = 'category_description,description'; definiert haben.

Weitere Informationen zu den Optionen von tinyMCE finden Sie unter http://tinymce.moxiecode.com/wiki.php/Configuration . Die Beschreibung der Moduskonfiguration finden Sie hier http://tinymce.moxiecode.com/wiki.php/Configuration:mode

4
eileencodes