how to save a select option dropdown in a wordpress plugin
Use this function this is just an example to save a select option dropdown in a wordpress plugin you can use it as per your needed.
Example 1
class DropdownOptionSetting { private $dropdown_option_setting_options; public function __construct() { add_action( 'admin_menu', array( $this, 'dropdown_option_setting_add_plugin_page' ) ); add_action( 'admin_init', array( $this, 'dropdown_option_setting_page_init' ) ); } public function dropdown_option_setting_add_plugin_page() { add_options_page( 'Dropdown Option Setting', // page_title 'Dropdown Option Setting', // menu_title 'manage_options', // capability 'dropdown-option-setting', // menu_slug array( $this, 'dropdown_option_setting_create_admin_page' ) // function ); } public function dropdown_option_setting_create_admin_page() { $this->dropdown_option_setting_options = get_option( 'dropdown_option_setting_option_name' ); ?> <div class="wrap"> <h2>Dropdown Option Setting</h2> <p></p> <?php settings_errors(); ?> <form method="post" action="options.php"> <?php settings_fields( 'dropdown_option_setting_option_group' ); do_settings_sections( 'dropdown-option-setting-admin' ); submit_button(); ?> </form> </div> <?php } public function dropdown_option_setting_page_init() { register_setting( 'dropdown_option_setting_option_group', // option_group 'dropdown_option_setting_option_name', // option_name array( $this, 'dropdown_option_setting_sanitize' ) // sanitize_callback ); add_settings_section( 'dropdown_option_setting_setting_section', // id 'Settings', // title array( $this, 'dropdown_option_setting_section_info' ), // callback 'dropdown-option-setting-admin' // page ); add_settings_field( 'dropdown_option_0', // id 'Dropdown Option', // title array( $this, 'dropdown_option_0_callback' ), // callback 'dropdown-option-setting-admin', // page 'dropdown_option_setting_setting_section' // section ); } public function dropdown_option_setting_sanitize($input) { $sanitary_values = array(); if ( isset( $input['dropdown_option_0'] ) ) { $sanitary_values['dropdown_option_0'] = $input['dropdown_option_0']; } return $sanitary_values; } public function dropdown_option_setting_section_info() { } public function dropdown_option_0_callback() { ?> <select name="dropdown_option_setting_option_name[dropdown_option_0]" id="dropdown_option_0"> <?php $selected = (isset( $this->dropdown_option_setting_options['dropdown_option_0'] ) && $this->dropdown_option_setting_options['dropdown_option_0'] === 'option-one') ? 'selected' : '' ; ?> <option value="option-one" <?php echo $selected; ?>>Option One</option> <?php $selected = (isset( $this->dropdown_option_setting_options['dropdown_option_0'] ) && $this->dropdown_option_setting_options['dropdown_option_0'] === 'option-two') ? 'selected' : '' ; ?> <option value="option-two" <?php echo $selected; ?>>Option Two</option> <?php $selected = (isset( $this->dropdown_option_setting_options['dropdown_option_0'] ) && $this->dropdown_option_setting_options['dropdown_option_0'] === 'option-three') ? 'selected' : '' ; ?> <option value="option-three" <?php echo $selected; ?>>Option Three</option> </select> <?php }}if ( is_admin() ) $dropdown_option_setting = new DropdownOptionSetting();
Retrieve this value
$dropdown_option = get_option( 'dropdown_option_setting_option_name' ); // Array$dropdown_value = $dropdown_option ['dropdown_option_0']; // Option value
If you need a simple way to do this
Example 2
add_action( 'admin_init', 'Dropdown_settings_init' );function Dropdown_settings_init( ) { register_setting( 'pluginPage', 'dropdown_settings' ); add_settings_section( 'Dropdown_pluginPage_section', __( 'Your section description', 'dropdown' ), 'Dropdown_settings_section_callback', 'pluginPage' ); add_settings_field( 'select_field_0', __( 'Settings field description', 'dropdown' ), 'Dropdown_select_field_render', 'pluginPage', 'Dropdown_pluginPage_section' );}function Dropdown_select_field_render( ) { $options = get_option( 'dropdown_settings' ); ?> <select name='dropdown_settings[select_field_0]'> <option value='1' <?php selected( $options['select_field_0'], 1 ); ?>>Option 1</option> <option value='2' <?php selected( $options['select_field_0'], 2 ); ?>>Option 2</option> <option value='3' <?php selected( $options['select_field_0'], 3 ); ?>>Option 3</option> <option value='4' <?php selected( $options['select_field_0'], 4 ); ?>>Option 4</option> </select><?php}function Dropdown_settings_section_callback( ) { echo __( 'This section description', 'dropdown' );}function Dropdown_options_page( ) { ?> <form action='options.php' method='post'> <h2>Dropdown</h2> <?php settings_fields( 'pluginPage' ); do_settings_sections( 'pluginPage' ); submit_button(); ?> </form> <?php}?>