Eigene Eingabefelder zu Wordpress Post Formular hinzufügen
Mit der Wordpress-Funktion add_meta_box kann man zum Wordpress-Post-Formular eigene Boxen hinzufügen und darin dann Eingabefelder plazieren.
Seit Version 3 ist das allerdings ein wenig komplizierter geworden, man braucht nun drei Funktionen die sich nacheinander aufrufen:
- Wordpress-Action „
init“ verküpfen mit einer eigenen Funktion (bei mir „my_init“) - Darin dann die Wordpress-Action „
admin_menu“ verknüpfen mit einer weiteren eigenen Funktion (bei mir „add_boxes“) - In dieser kann man dann endlich mit
add_meta_boxdie tatsächlichen Boxen hinzufügen
<?php
add_action('init', 'my_init');
function my_init()
{
add_action('admin_menu', 'add_boxes');
}
function add_boxes()
{
add_meta_box('my_field_id', 'Boxtitel', 'my_field_function', 'post', 'normal', 'high');
}
function my_field_function()
{
?>
<label for="my_field">Beschreibung</label><br />
<input type="text" id="my_field" name="my_field" value="" />
<?php
}
?>
Zu den Parametern die man man der add_meta_box mitgibt:
id: steht dann im div der Box als id drintitle: Steht im Kopf der Box als Titelcallback: ist der Name deiner eigenen PHP_Funktion mit der du den Inhalt deiner Box ausgibst (bei mir „my_field_function“)post_type: Bei welchem Wordpress-Post-Typ deine Box im Formular gezeigt werden soll, möglich sind:page,post,linkoder eincustom_post_typecontext(optional): Wo im Formular deine Box gezeigt wird. Möglich sind:normal: die Box wird in der linken, der breiten Spalte unter dem großen Editor angezeigtadvanced: wie normal, nur weiter unten und man muss die Box damit man sie sieht anfangs oben unter „Optionen einblenden“ er anhakeln.side: Die Box wird in der rechten, der schmaleren Spalte angezeigt
priority(optional): Regelt ungefähr die Reihenfolge in der die Boxen angezeigt werden. Möglich sind hier „high“, „core“, „default“ oder „low“callback_args(optional): Hier kannst du einen Array übergeben der dann an deine Callback-Funktion weitergereicht wird.
Originale Funktionsbeschreibung von add_meta_box in der Wordpress Doku

Kommentare
Ja und wo soll der Code hin? Ich weiß es, aber für andere ist es einfach nur ein Schlag ins Gesicht. :)
Ja gute Frage wohin soll der Code?
In die functions.php von deinem theme oder in due haupt php datei von deinem plugin.