PHP code example of yipresser / wp-settings-api-helper
1. Go to this page and download the library: Download yipresser/wp-settings-api-helper library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
yipresser / wp-settings-api-helper example snippets
namespace MyPlugin\Admin;
use Yipresser\WpSettingsApiHelper\WP_Settings_API_Helper;
class My_Settings extends WP_Settings_API_Helper {
public function __construct() {
add_action( 'admin_init', [ $this, 'init' ] );
}
/**
* Start the engine running
*
* @return void
*/
public function init() {
// Define your options
$this->settings_options = [
[
'option_group' => 'my_plugin_settings_group',
'option_name' => 'my_plugin_settings',
// Optional args for register_setting():
// 'args' => [ 'sanitize_callback' => [$this, 'sanitize_settings'] ]
]
];
// Define your sections and fields
$this->settings_sections = [
[
'id' => 'my_plugin_general_section',
'title' => 'General Settings',
'description' => 'These are the general settings for the plugin.',
'menu_slug' => 'my_plugin_slug', // Slug of the settings page
'option_name' => 'my_plugin_settings',
'fields' => [
[
'type' => 'text',
'title' => 'API Key',
'id' => 'api_key',
'name' => 'api_key',
'default' => '',
'desc' => 'Enter your API key here.',
],
[
'type' => 'checkbox',
'title' => 'Enable Feature',
'id' => 'enable_feature',
'name' => 'enable_feature',
'label' => 'Check to enable',
'default' => 0,
]
]
]
];
$this->setup();
}
}
// Assuming this is inside your admin page callback function
public function my_plugin_options_page() {
echo '<div class="wrap">';
echo '<h1>My Plugin Options</h1>';
// Pass the menu_slug used in your $settings_sections
$my_settings->render_settings_on_page( 'my_plugin_slug' );
echo '</div>';
}