49e78b90cf
* Add settings page routes * Add control options for excluded statuses * Add control options for excluded statuses * Add excluded order statuses to rest api * Add wc settings to wc-api * Add wc settings to wc-api * Split and validate multiselect values in settings controller * Add wcAdminSettings to wcSettings global * Set initial excluded statuses from serverside wcSettings data * Add extensible filter for wcSettings global * Split arrays into comma separated strings in wc-api * Extract setting as separate component * Extra settings to config file * Add checkboxGroup option as input type * Separate status types into default and custom groups * Add setting option styling * Add responsive styling for settings * Fix wpClosedMenu and wpOpenMenu for settings page * Add support for resetting to default values * Only show checkbox group if options are available * Add proptypes to Setting component * Add extensible filter to analytics settings * Add readme for settings config and extensibility * Hook up excluded status settings to reports * Pass object to settings API instead of comma delimited string * Fix inpuType -> inputType typo * Remove hasError from constructor * Bump settings API to v4 * Use interpolateComponents instead of dangerously setting html * Use empty array in initial excldued statuses setting value if none is retrieved * Remove double check for refunded status in default order statuses * Update settings wc-api to use namespace * Add aria=labelledby to checkbox group |
||
---|---|---|
.. | ||
README.md | ||
config.js | ||
index.js | ||
index.scss | ||
setting.js | ||
setting.scss |
README.md
Settings
The settings used to modify the way data is retreived or displayed in WooCommerce reports.
Extending Settings
Settings can be added, removed, or modified outside oc wc-admin
by hooking into woocommerce_admin_analytics_settings
. For example:
addFilter( 'woocommerce_admin_analytics_settings', 'wc-example/my-setting', settings => {
return [
...settings,
{
name: 'custom_setting',
label: __( 'Custom setting:', 'wc-admin' ),
inputType: 'text',
helpText: __( 'Help text to describe what the setting does.' ),
initialValue: 'Initial value used',
defaultValue: 'Default value',
},
];
} );
Each settings has the following properties:
name
(string): The slug of the setting to be updated.label
(string): The label used to describe and displayed next to the setting.inputType
(enum: text|checkbox|checkboxGroup): The type of input to use.helpText
(string): Text displayed beneath the setting.options
(array): Array of options used for inputs with selectable options.initialValue
(string|array): Initial value used when rendering the setting.defaultValue
(string|array): Value used when resetting to default settings.