WordPress: Editor vorbelegen
13.08.2012 in: Webdesign und WordPress
Vielen Leuten fällt es schwer, einen vernünftig gegliederten Text zu schreiben. Man kann ihnen in WordPress mit vorbereitetem Inhalt etwas unter die Arme greifen: Der Filter 'default_content'
existiert genau dafür. Er liefert die Argumente $content und ein Post-Objekt, damit man den Text noch ein wenig genauer zuschneiden kann.
Am Beispiel: Gegeben sei ein Custom Post Type review
. Wir möchten diese Kritiken möglichst einheitlich gliedern, den Autoren aber freie Hand lassen.
/* * See wp-admin/includes/post.php function get_default_post_to_edit() * There are also the filters 'default_title' and 'default_excerpt' */ add_filter('default_content'
,'t5_preset_editor_content'
, 10, 2 ); /** * Fills the default content for post type 'review' if it is not empty. * * @param string $content * @param object $post * @return string */ function t5_preset_editor_content( $content, $post ) { if (''
!== $content or'review'
!== $post->post_type ) { return $content; } return'<p>Einleitende Worte …</p> <h2>Inhalt</h2> <h2>Kritik</h2> <h2>Links</h2>'
; }
Bei einem Beitrag des Posttypen Review sieht das beispielsweise so aus:
Wir könnten auch für alle drei Abschnitte separate Editoren anbieten, deren Inhalte wir im Frontend zusammensetzen. Das ist aber manchmal zu starr; die hier gezeigte Vorbelegung bindet den Autor nicht, sondern steht nur als Empfehlung da – sozusagen als flexible Alternative zu Metaboxen.