PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.6.1
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.6.1
4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / Settings / RegisterSettingService.php
surecart / app / src / Settings Last commit date
RegisterSettingService.php 3 years ago SettingService.php 3 years ago SettingsServiceProvider.php 3 years ago
RegisterSettingService.php
85 lines
1 <?php
2
3 namespace SureCart\Settings;
4
5 /**
6 * Settings registration service.
7 */
8 class RegisterSettingService {
9 /**
10 * Our setting prefix.
11 *
12 * @var string
13 */
14 protected $prefix = 'surecart_';
15
16 /**
17 * Holds the option group name.
18 *
19 * @var string
20 */
21 protected $option_group;
22
23 /**
24 * Holds the option name.
25 *
26 * @var string
27 */
28 protected $option_name;
29
30 /**
31 * Holds the options args.
32 *
33 * @var array
34 */
35 protected $args = [];
36
37 /**
38 * Register a setting.
39 *
40 * @param string $option_group A settings group name. Should correspond to an allowed option key name.
41 * Default allowed option key names include 'general', 'discussion', 'media',
42 * 'reading', 'writing', and 'options'.
43 * @param string $option_name The name of an option to sanitize and save.
44 * @param array $args {
45 * Data used to describe the setting when registered.
46 *
47 * @type string $type The type of data associated with this setting.
48 * Valid values are 'string', 'boolean', 'integer', 'number', 'array', and 'object'.
49 * @type string $description A description of the data attached to this setting.
50 * @type callable $sanitize_callback A callback function that sanitizes the option's value.
51 * @type bool|array $show_in_rest Whether data associated with this setting should be included in the REST API.
52 * When registering complex settings, this argument may optionally be an
53 * array with a 'schema' key.
54 * @type mixed $default Default value when calling `get_option()`.
55 */
56 public function __construct( $option_group, $option_name, $args = [] ) {
57 $this->option_group = $option_group;
58 $this->option_name = $option_name;
59 $this->args = $args;
60 }
61
62 /**
63 * Call registration hooks.
64 *
65 * @return void
66 */
67 public function register() {
68 add_action( 'admin_init', [ $this, 'registerSetting' ] );
69 add_action( 'rest_api_init', [ $this, 'registerSetting' ] );
70 }
71
72 /**
73 * Register the setting
74 *
75 * @return void
76 */
77 public function registerSetting() {
78 register_setting(
79 $this->option_group,
80 $this->prefix . $this->option_name,
81 $this->args,
82 );
83 }
84 }
85