Trick # 607 | Dieser Beitrag beinhaltet 0 Wörter. – Geschätzte Lesezeit: ca. 0 Minuten.
Auf Ihrer Website möchten Sie vielleicht hin und wieder sicherstellen, dass bestimmte Beiträge ausschliesslich im Text-Editor bearbeitet werden können. Dies kann besonders dann wichtig sein, wenn der visuelle Editor den Code eines Beitrags verändert oder im schlimmsten Fall verunstaltet.
Besonders wenn Sie bewusst Code in ihren Beiträgen verwenden (etwa HTML-Snippets oder Entities) korrigiert der visuelle Editor von WordPress den eingegebenen Inhalt. Das kann dann zu unerwünschten Resultaten führen: Statt des Codes wird (vermeintlich sauberer) Text ausgegeben. Dies kann verhindert werden, wenn Sie statt der visuellen die Text- oder HTML-Ansicht des Editors verwenden.
Im früheren Beitrag «Verkorkstem HTML-Code unter WordPress einen Riegel schieben», haben wir uns diesem Problem bereits angenommen; der damalige Code hat aber nur im Classic-Editor von WordPress funktioniert. Heute gehen wir einen Schritt weiter und passen den Editor des Divi-VisualBuilder gezielt an; überdies stellen wir sicher, dass der visuelle Editor Standard bleibt und nur bei einzelnen Beiträgen deaktiviert wird.
Kopieren Sie dazu den folgenden Code und platzieren Sie ihn in der Datei functions.php. Diese ist im Backend unter Design/Theme-Datei-Editor zu bearbeiten:
// Gemeinsame Funktion für die Post-IDs
function get_excluded_post_ids() {
return array(
123, 987, 456
);
}// Divi Visual Builder für bestimmte Posts deaktivieren
function disable_divi_builder_for_specific_posts( $can_use, $post_id ) {
$excluded_posts = get_excluded_post_ids();// Deaktiviere den Divi Builder für die angegebenen Posts
if ( in_array( $post_id, $excluded_posts, true ) ) {
return false;
}return $can_use; // Standardverhalten für andere Posts
}
add_filter( 'et_builder_can_use_builder', 'disable_divi_builder_for_specific_posts', 10, 2 );// Rich Editor (visueller Editor) für bestimmte Posts deaktivieren
function disable_rich_editor_for_specific_posts( $wp_rich_edit ) {
global $post;// Sicherstellen, dass $post verfügbar ist
if ( ! $post ) {
return $wp_rich_edit;
}$excluded_posts = get_excluded_post_ids();// Deaktiviere den Rich Editor (nur HTML-Ansicht aktivieren)
if ( in_array( $post->ID, $excluded_posts, true ) ) {
return false;
}return $wp_rich_edit; // Standardverhalten für andere Posts
}
add_filter( 'user_can_richedit', 'disable_rich_editor_for_specific_posts', 50 );Anpassen müssen Sie sicher die Zeile 4 des Codes: Dort werden alle IDs eingetragen, auf denen der Text-Editor verwendet werden soll und die visuelle Ansicht entsprechend deaktiviert gehört.
Werbung


