WordPress 3.9 Editor Tiny MCE tunen

Jeder hat seine eigenen Vorstellungen, wie er Beiträge im Blog editieren und erstellen will. WordPress stellt daher auch mehrere Möglichkeiten zur Verfügung. Die wohl meistgenützte Variante ist der interne Editor TinyMCE. Keiner liebt ihn, aber alle verwenden ihn. Aber es gibt einige Tricks, wie du den Editor nach deinen Bedürfnissen tunen kannst. Seit WP 3.9 wurde auf TinyMCE 4 umgestellt, weshalb alte Plugins und Kniffs aus dem Netz kaum mehr funktionieren.

Erklärung vorab !

Artikel dieser Art gibt es viele. Leider sind aber zahllose veraltete Posts im Umlauf und werden immer noch kommentarlos kopiert. Diese Tweaks funktionieren dann einfach nicht. Ein „theme_advanced_blockformats“ oder ein „theme_advanced_buttons1“ funktioniert einfach nicht mehr. Hier findest du eine aktuelle Anleitung (WP 3.9 +).

Dann gibt es noch zahllose Plugins, die einige dieser Funktionen können. Hier gilt aber die Regel, dass man so wenige Plugins wie möglich einsetzen sollte. Plugins sind die perfekte Eintrittspforte für Hacker, fast alle Unsicherheiten bei WordPress entstehen durch Plugins. Lieber also ein paar Minuten mehr investieren und seinen Blog damit sicherer und performanter halten.

Settings Array ändern – Wie geht’s

In dem Verzeichnis, in dem sich dein Theme befindet (./wp-content/themes/dein_theme) sollte eine Datei namens functions.php sein. Falls nicht, so kannst du diese dort einfach erstellen. Hier können verschiedene Einstellungen vorgenommen werden:
Der TinyMCE verwaltet ein Array, in dem die meisten Settings konfiguriert werden können. Dieses Array kann man beliebig ändern. Dazu legt man sich am einfachsten eine Funktion in der functions.php an. Durch ein „add_Filter“ ruft Worpdress diese Funktion auf, übergibt dabei das aktuelle Array. In der Funktion ändert man dieses und gibt es wieder zurück. Fertig.

Das init Array sieht üblicherweise so aus:

Erste Anlaufstelle was die Konfiguration betrifft ist am besten die TinyMCE Doku hier.

Meine Konfiguration

Ich möchte euch noch meine Konfiguration als Ideenquelle vorstellen.

formate_dropdown

Formate Dropdown

1. Mir ist der Editor standardmäßig zu klein. Vor allem die Höhe. Lässt sich mit einem Setzen von height beheben.

2. Ich mag andere Buttons in der ersten Zeile. Vor allem das Dropdown-Menü zum Wählen der Absatzformate und das Style Menü will ich ganz oben. Das wird in den beiden toolbar Zeilen erledigt.

3. Das erwähnte Dropdown Menü (Formate) bietet zahlreiche Möglichkeiten. Aus SEO, aber auch aus Designgründen macht es z.B. nicht viel Sinn ein h1 Heading zur Verfügung zu stellen. Ich bevorzuge bei meinem Theme nur ein h1 Heading pro Beitrag. Diese steht ganz oben und ist der Titel des Artikels. In diesem Fall also „WordPress 3.9 Editor Tiny MCE tunen“. Im geschriebenen Text sollten dann nur noch h2, h3 und h4 Headings verwendet werden, also möchte ich kein h1 zur Verfügung stellen. Ich verwende auch andere Tags nicht, weshalb ich nur die wichtigsten in dieses Menü gebe. Dies macht vor allem dann Sinn, wenn mehrere Leute an einem Blog arbeiten. Aber auch selber passiert es sonst immer wieder, dass man verschiedene Artikel verschieden designed, was dann inkonsistent wirkt. Notfalls hat man über die Menüzeile (siehe nächster Punkt) oder im html Modus noch alle Formate zur Verfügung. Welche Punkte im Dropdown-Menü erscheinen legt man mit der „block-formats“ Zeile fest. Das alte „theme_advanced_blockformats“ funktioniert ab WP 3.9 nicht mehr.

3. Ich blende mir auch das Menü noch ein. Darin hat man tolle Features wie das Einfügen von Youtube Videos, die Vollbildvariante und die Option „als Text einfügen“ wodurch Formatierungen bei Copy/paste nicht übernommen werden. Dies bewerkstelligt die „menubar“ Zeile.

4. Im Stylemenü (Dropdown) stehen die wichtigsten Styles zur Verfügung. Über die Variable „style-formats“ kann man diese Einträge modifizieren. Es wird ein JSON String verwendet. Diesen kann man sich selber zusammenbasteln, oder man überlässt PHP diese Aufgabe (json_encode). Nachdem mein Theme absichtlich sehr einfach gehalten ist verwende ich auch praktisch keine eigenen Styles. Ich habe aber ein Beispiel eingebaut wie man z.B. „rot und fett“ als eigenen Style verwirklichen kann. Man kann wählen ob man das Style Menü völlig durch eigene Styles ersetzen will, oder ob man es durch die eigenen Styles nur ergänzen möchte. Ich füge mein „rot und fett“ nur dazu.

5. Um das Aussehen des Editors möglichst nahe am Blog zu halten, besteht die Möglichkeit eigene css Dateien für die Darstellung des Editors zu verwenden. Hier könnte man ein css File einfach an den „content-css“  String anhängen. Einfachere Version ist das Aufrufen von add_editor_style();. Dadurch wird automatisch das file editor-style.css aus dem Directory des aktuellen Themes angehängt. Guter Ausgangspunkt ist es das Stylesheet des Themes einfach zu duplizieren und umzubenennen. Dann kann man damit probieren. Hintergrundfarbe, Schriftfarbe etc. einfach „body“ zuweisen. Andere Möglichkeit ist die Variable body_class zu ändern. Hier wird angegeben welche CSS Klassen dem Editor zugewiesen werden sollen.

Andere CSS Anweisungen funktionieren meistens. Will man Google Fonts verwenden, so besteht die Möglichkeit diese als CSS-Stylesheet einzubinden (content_css). Ich verwende z.B. EXO für die Überschriften.

Hier meine Konfiguration in der functions.php:

Und der daraus resultierende Editor.

editor

HTML als Standardeditor verwenden

Viele geben lieber direkt im HTML Modus ein. So manche Medieneinbettung etc. läuft mit HTML deutlich reibungsloser ab. Tabellen etc. sind in HTML oft schneller erstellt. Auch wenn der TinyMCE deutlich besser geworden ist gebe ich immer noch viele Sachen in HTML ein. Für die echten HTML Freaks lohnt sich dieser Hack in der functions.php

Damit öffnet sich automatisch immer der HTML Editor.

«  -  »

Ein Kommentar zu

  1. […] Seit der Wordress Version 3.9 funktionieren meine Änderungen nicht mehr. Ich lasse zwar die Einleitung stehen, verweise aber auf Codefreak. Er hat mich in den Kommentaren auf seinen Blog mit ein Angepasstes Anleitung hingewiesen. […]

Senf dazugeben

*