Erstellen Sie eine leere Seite für dynamische WordPress

Ich habe ein Untermenü in WordPress mit add_submenu_page erstellt:

add_submenu_page(null,'Page Title','Page Title','administrator','page-slug','page-callback'); 

Ich möchte eine andere Seite wie diese erstellen mit der Bedingung, dass die Seite komplett leer ist, ohne eine neue Datei zu erstellen, hat WordPress eine function wie diese? Ich will es, weil ich dort eine XML-Datei generieren und herunterladen will und wenn die Seite hat Kopf- und Fußzeilen die Seite lädt sie auch herunter. Danke.

Solutions Collecting From Web of "Erstellen Sie eine leere Seite für dynamische WordPress"

Versuchen Sie Folgendes: Im Load-Hook können Sie Ihren XML-Code ausgeben. u

 function my_menu_pages() { $hook = add_submenu_page( null, 'Page Title', 'Page Title', 'administrator', 'sub-menu-slug', function() { } ); add_action('load-' . $hook, function() { // add your xml code here, // you will get a blank page to start with exit; }); } add_action('admin_menu', 'my_menu_pages'); 

Versuchen Sie nicht, dies mit Admin-Menüs / Admin-Seiten zu tun. Es wird Kopfschmerzen geben. Richten Sie einen AJAX-API-Callback ein, und Sie können die Ausgabe vollständig steuern, ohne sich um andere Markups kümmern zu müssen, da keine vorhanden sind.

 function download_xml_wpse_144156() { // generate your XML and echo it die(); } add_action('wp_ajax_grab_my_xml', 'download_xml_wpse_144156'); add_action('wp_ajax_grab_my_xml', 'download_xml_wpse_144156'); 

Sie können die XML-Datei mit einer Anfrage an //example.com/wp-admin/admin-ajax.php?action=grab_my_xml abrufen. Beachten Sie, dass grab_my_xml der nachgestellte Teil der beiden Aktions-Hooks ist. Sie können das nach Belieben einstellen.