Welcher Haken für die Verarbeitung von Plugin-Seitenformulardaten?

Welchen Hook sollte ich verwenden, um Daten von meinen Plugin-Seiten zu verarbeiten. Ich benutze derzeit “admin_init” . Ist das korrekt? War dieser Haken so gedacht?

Solutions Collecting From Web of "Welcher Haken für die Verarbeitung von Plugin-Seitenformulardaten?"

Wenn Sie Daten verarbeiten, die von einem benutzerdefinierten Formular übermittelt wurden, würde ich sagen, dass der Init-Hook der beste zu verwendende Hook ist. Siehe Beispiel 1 .

Für die Verarbeitung von Plugin-Optionen gehe ich davon aus, dass Sie eine Art von Optionen-Seite erstellt haben?

Hier ist ein Beispiel für das Erstellen einer Checkbox-Einstellung innerhalb einer Options-Seite, mit validation und allem anderen. Erstellen Sie einfach eine neue “myplugin-admin.php” -Datei und fügen Sie den Code ein. Es gibt nur eine Einstellung: Entfernen Sie Müll aus dem Bereich von wp. Dann füge die Admin-Datei in deine Haupt-Plugin-PHP-Datei ein (zB myplugin.php) -> inkludiere “myplugin-admin.php”;

< ?php // SETUP THE MENU function myplugin_setup_menu(){ add_options_page( 'Settings', 'MyPlugin', 'manage_options', __FILE__, 'myplugin_build_options_page' ); } // BUILD OPTIONS PAGE function myplugin_build_options_page(){ ?> 

MyPlugin < ?php _e("Settings"); ?>

< ?php _e("General"); ?> < ?php _e("Settings"); ?>

< ?php settings_fields('myplugin_options'); ?> < ?php do_settings_sections(__FILE__); ?>

< ?php _e("Edit MyPLugin Settings"); ?>


< ?php myplugin_submit(); ?>
< ?php } /* ================================================================ *\ BUILD AND REGISTER OPTIONS \* ================================================================ register_setting( $option_group, $option_name, $sanitize_callback ); $option_group: a string representing the name of the settings group $option_name: the name of the option $sanitize_callback: a callback function that can handle any specific operations or sanitizing add_settings_section( $id, $title, $callback, $page ); $id: a unique ID for the section $title: a heading that will be displayed above the fields on the page $callback: can handle the creation of the section; if it's declared, you must create the function, or an error will be thrown $page: defines the type of settings page that this section should be applied to; in our case, it should apply to our custom page, so we used __FILE__ as the name add_settings_field( $id, $title, $callback, $page, $section, $args ); $id: a unique ID for the field $title: the title before the field $callback: handles the displaying of the field $page: it should apply to our custom page, so we used __FILE__ as the name $section: set the section the the field belongs to $args: ka */ function myplugin_build_options () { $options = get_option('lmyplugin_options'); if(!isset($options)) { //not present, so add $options = array( 'remove_junk' => 1 ); add_option('myplugin_options', $options); } // Register Settings register_setting('myplugin_options', 'myplugin_options', 'myplugin_validate_settings'); // Add Sections add_settings_section('myplugin_section_functions', __("Functions", "myplugin"), 'myplugin_section_functions_cb', __FILE__); /* ADD FIELDS TO SECTION */ // Remove Junk add_settings_field('remove_junk', __('Remove Junk from Head', 'myplugin'), 'myplugin_setting_remove_junk', __FILE__, 'myplugin_section_functions'); } // VALIDATE SETTINGS function myplugin_validate_settings($options) { return $options; } // SETTINGS SECTION CLLBACK function myplugin_section_functions_cb() {} /* ================================================================ *\ BUILD SETTINGS FIELDS \* ================================================================ */ // Remove Junk function myplugin_setting_remove_junk() { $options = get_option('myplugin_options'); ?>
< ?php _e("Remove Junk from ", 'myplugin'); ?>
< ?php } /* ================================================================ *\ MISC \* ================================================================ */ // SUBMIT BUTTON function myplugin_submit() { ?>

< ?php } // ADD STYLESHEET function myplugin_register_head() { $url = plugins_url('css/admin-style.css', __FILE__ ); echo ''; } // ADD ACTIONS add_action('admin_head', 'myplugin_register_head'); add_action('admin_init', 'myplugin_build_options'); add_action('admin_menu', 'myplugin_setup_menu'); ?>

Viel Spaß beim Ausprobieren und ich hoffe ich konnte dir helfen.