Ich bin ständig auf die gleiche Störung gestoßen, also dachte ich, ich würde sehen, ob es da draußen irgendwelche Ideen oder Erfahrungen gibt ...
Ich habe ein Plugin erstellt, das eine eigene Admin-Seite verwendet. Es muss. Jetzt, wo ich das WP_List_Table () - Zeug aussortiert habe, muss ich sagen, dass es großartig ist ... aber ...
Benutzerdefinierte Pluginseiten werden immer geladen, es admin.php?page=...
sei denn, ich möchte sie direkt aus dem Plugin-Verzeichnis laden, was ich nicht tue. Wenn ich nun von dieser Seite aus eine 'Aktion' mache, muss ich das irgendwie verarbeiten und dann ohne den Aktionsparameter zurück auf die Seite leiten . Egal ob ich ein GET oder POST mache, wirklich.
Auf allen internen Seiten von WP wird dies auf derselben Seite ausgeführt. Es wird überprüft, ob eine Aktion vorhanden ist. Wenn dies der Fall ist, wird sie verarbeitet und ohne die Aktion an sich selbst weitergeleitet. Dies ist möglich, da auf diesen Seiten die admin-header
noch nicht geladen wurden.
Wenn Sie es jedoch auf Ihrer eigenen Seite versuchen, wurde bereits die Hälfte der Administrationsoberfläche an den Browser gesendet, sodass eine Weiterleitung nicht mehr möglich ist. Natürlich besteht die Lösung darin, direkt auf eine andere Seite zu POSTEN / GETEN, das WP-Framework darauf zu laden, die Verarbeitung durchzuführen und dann zur ursprünglichen Seite zurückzukehren ... aber ... das ist ein bisschen ärgerlich, weil ... mein Original Die Seite wird über einen Rückruf geladen, sodass sie innerhalb einer Methode meiner Klasse ausgeführt wird. Das ist schön.
Wenn ich eine separate Seite lade, muss ich manuell einschließen wp-load.php
und bin außerhalb meiner Klasse, was ärgerlich ist, und in meinem speziellen Fall nervt es mich besonders, weil ich meine Plugin-Klasse nur anonym instanziiere, damit niemand darauf zugreifen kann von außen.
Also, nach dieser langen Geschichte ... hat jemand eine gute Lösung gefunden, um eine andere Seite über einen Rückruf zu laden, ohne dass die gesamte Administrationsoberfläche bereits eingerichtet ist?
(Ich kenne eine Problemumgehung ... Ich kann eine Funktion load-....
einbinden, die nach dem Aktionsparameter sucht und die Verarbeitung und Umleitung durchführt. Aber ich frage mich, ob es einen besseren Weg gibt.)
Vielen Dank.
plugin-wp-pagenavi
ist ... ich habe angenommen, dass es um die Korrelation zwischen Plugins und dem Admin-Menü geht. Da meine Frage damit zusammenhängt, habe ich diesen Tag ausgewählt.
[admin-menu]
hier gebrauchen , aber ich glaube nicht, dass es wirklich damit zusammenhängt. Ich habe die Tags so geändert, wie ich es für passend halte. Sie können sie natürlich wieder bearbeiten.
[plugin-wp-pagenavi]
?[plugin-development]
ist hier sicher willkommen.