Fügen Sie Schnellbearbeitungsfelder ohne benutzerdefinierte Spalten hinzu

Diese Frage ist eine Folge dieser Antwort, die ich geschrieben habe .

Nehmen wir an, ich möchte etwas zum Schnellbearbeitungsfeld für die Post- Post- Listentabelle hinzufügen. Um dies zu tun, muss ich eine benutzerdefinierte Spalte hinzufügen wegen des folgenden Teils in der Datei class-wp-posts-list-table.php im core:

 foreach ( $columns as $column_name => $column_display_name ) { if ( isset( $core_columns[$column_name] ) ) continue; do_action( $bulk ? 'bulk_edit_custom_box' : 'quick_edit_custom_box', $column_name, $screen->post_type ); } 

Wie Sie sehen, wird der Filter für benutzerdefinierte Quick / Bulk-Bearbeitungsfelder nicht ausgetriggers, wenn keine benutzerdefinierte Spalte registriert ist. Nun, diese und diese Antwort schlagen vor, entweder eine benutzerdefinierte Dummy-Spalte hinzuzufügen oder hinzuzufügen und dann zu entfernen.

Also habe ich eine benutzerdefinierte Dummy-Spalte hinzugefügt:

 $pt = 'post'; add_filter( "manage_{$pt}_posts_columns", array( $this, 'addColDummy' ) ); # add_action( "manage_{$pt}_posts_custom_column", array( $this, 'removeColDummy' ), 10, 2 ); # add_filter( "manage_edit-{$pt}_columns", array( $this, 'remove' ) ); 

Das Problem ist jetzt: Wenn ich dann die benutzerdefinierte Spalte wieder aus einem der beiden obigen Filter entferne, wird der benutzerdefinierte Code nicht mehr ausgetriggers. Frage: Wie kann ich die Dummy-Spalte entfernen, ohne die benutzerdefinierten Schnellbearbeitungsfunktionen wieder zu entfernen?

Solutions Collecting From Web of "Fügen Sie Schnellbearbeitungsfelder ohne benutzerdefinierte Spalten hinzu"