wake-up-neo.com

Entfernen Sie tinyMCE von admin und ersetzen Sie es durch textarea

Ich habe ein Plugin mit einem benutzerdefinierten Beitragstyp erstellt. Ich benutze post_content für einen einfachen Text. Ich muss für dieses Feld keine ausgefallene Bearbeitung oder Einfügung von Daten anbieten, daher habe ich nach einer Möglichkeit gesucht, die Schaltflächen aus dem tinyMCE-Editor zu entfernen.

Ich habe nie eine sehr gute Lösung gefunden, also habe ich die editor aus den benutzerdefinierten Beitragstyp-Unterstützungen in der Registerfunktion entfernt.

'supports' => array('title','revisions','thumbnail'),

Um dann einen Bereich für den Inhalt zu erstellen, gebe ich einfach eine textarea im Back-End-Formular mit den Attributen name und id als "content" aus.

<tr>
    <th scope="row">
        <label for="content">Review body</label>
    </th>
    <td>
        <textarea style="height: 300px; width: 100%" autocomplete="off" cols="40" name="content" id="content">' . $post->post_content . '</textarea>
    </td>
</tr>

Das funktioniert genau so wie ich es will und ist ziemlich einfach.

Die Frage ist, ob ich dadurch die sanitäre Grundversorgung verliere oder Sicherheitsmaßnahmen auslasse.

1
Nathan Powell

Das Rad muss nicht neu erfunden werden - setzen Sie Ihre Unterstützung für editor zurück und optimieren Sie die Einstellungen:

function wpse_199918_wp_editor_settings( $settings, $editor_id ) {
    if ( $editor_id === 'content' && get_current_screen()->post_type === 'custom_post_type' ) {
        $settings['tinymce']   = false;
        $settings['quicktags'] = false;
        $settings['media_buttons'] = false;
    }

    return $settings;
}

add_filter( 'wp_editor_settings', 'wpse_199918_wp_editor_settings', 10, 2 );
5
TheDeadMedic