Ich habe add_meta_box () verwendet, um dem WordPress-Bearbeitungsfenster auf beiden Seiten und Posts ein benutzerdefiniertes Meta-Feld hinzuzufügen.
Wie kann ich diese Meta-Box auch auf dem Bildschirm "Schnellbearbeitung" anzeigen lassen?
Im Idealfall sollte es rechts neben der Kategorieauswahl angezeigt werden.
theme-development
metabox
Scott B
quelle
quelle
Antworten:
Es scheint keine einfache Möglichkeit zu geben, Sie müssen den gesamten Code selbst hinzufügen.
inline_edit_row()
, die Funktion, mit der die Bildschirme "Schnellbearbeitung" und "Massenbearbeitung" gezeichnet werden, scheint nur eine Aktion zu haben, an die Sie sich anschließen können:quick_edit_custom_box
oderbulk_edit_custom_box
. Es wird für alle Nicht-Core-Spalten aufgerufen, diewp_manage_posts_columns()
zurückgegeben werden. Es gibt einige Filter, mit denen Sie beispielsweise eine Spalte hinzufügen könnenmanage_posts_columns
. Leider definiert diese Funktion die Spaltenüberschriften der Beitragstabelle. Sie sollten sie daher vor demprint_column_headers()
Drucken wieder entfernen . Dies kann in derget_column_headers()
Funktion mit demmanage_[screen_id]_headers
Filter erfolgen .edit-post
ist die Bildschirm-ID für den Bildschirm Beiträge bearbeiten.Alles in allem ergibt dies einen Hack wie den folgenden, um Code hinzuzufügen. Das Herausfinden, wo Sie mit dem Einreichen des Formulars umgehen können, wird (derzeit) dem Leser als Übung überlassen.
quelle
on_bulk_edit_custom_box
Folgefrage : Wie erhält man Zugriff auf die Daten des aktuellen Beitrags, um Felder vorab auszufüllen?global $post
scheint nicht zu funktionieren.Die obigen Antworten bieten keine eindeutige Möglichkeit zum Speichern von Daten. Der folgende Code stammt aus einem Produktionssystem, das den
video
benutzerdefinierten Beitragstyp verwendet, bevor ich das WordPress-Massenbearbeitungs-Plugin Custom Bulk / Quick Edit geschrieben habe .Datei
quick_edit.js
Datei
video-quick-edit.php
quelle