Created
January 28, 2020 11:00
-
-
Save polevaultweb/fc01044581ccdc3711decb92b7bc6f71 to your computer and use it in GitHub Desktop.
Example of how to use https://github.com/WPUserManager/wp-optionskit
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$prefix = 'igp'; | |
$panel = new \TDP\OptionsKit( $prefix ); | |
$panel->set_page_title( __( 'My Plugin Settings' ) ); | |
/** | |
* Setup the menu for the options panel. | |
* | |
* @param array $menu | |
* | |
* @return array | |
*/ | |
function igp_setup_menu( $menu ) { | |
// These defaults can be customized | |
// $menu['parent'] = 'options-general.php'; | |
// $menu['menu_title'] = 'Settings Panel'; | |
// $menu['capability'] = 'manage_options'; | |
$menu['page_title'] = __( 'My Plugin Settings' ); | |
$menu['menu_title'] = $menu['page_title']; | |
return $menu; | |
} | |
add_filter( 'igp_menu', 'igp_setup_menu' ); | |
/** | |
* Register settings tabs. | |
* | |
* @param array $tabs | |
* | |
* @return array | |
*/ | |
function igp_register_settings_tabs( $tabs ) { | |
return array( | |
'general' => __( 'General' ), | |
); | |
} | |
add_filter( 'igp_settings_tabs', 'igp_register_settings_tabs' ); | |
/** | |
* Register settings subsections (optional) | |
* | |
* @param array $subsections | |
* | |
* @return array | |
*/ | |
function igp_register_settings_subsections( $subsections ) { | |
return $subsections; | |
} | |
add_filter( 'igp_registered_settings_sections', 'igp_register_settings_subsections' ); | |
/** | |
* Register settings fields for the options panel. | |
* | |
* @param array $settings | |
* | |
* @return array | |
*/ | |
function igp_register_settings( $settings ) { | |
$settings = array( | |
'general' => array( | |
array( | |
'id' => 'api_key', | |
'name' => __( 'API Key' ), | |
'desc' => __( 'Add your API key to get started' ), | |
'type' => 'text', | |
), | |
array( | |
'id' => 'results_limit', | |
'name' => __( 'Results Limit' ), | |
'type' => 'text', | |
'std' => 10, | |
), | |
array( | |
'id' => 'start_date', | |
'name' => __( 'Start Date' ), | |
'type' => 'text', | |
), | |
), | |
); | |
return $settings; | |
} | |
add_filter( 'igp_registered_settings', 'igp_register_settings' ); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment