WP_Theme_JSON::get_settings_slugs() WordPress Method
The WP_Theme_JSON::get_settings_slugs() method can be used to get an array of setting slugs for a given WordPress theme. This is useful for creating a customizer panel for a theme.
WP_Theme_JSON::get_settings_slugs( array $settings, array $preset_metadata, array $origins = null ) #
Similar to get_settings_values_by_slug, but doesn’t compute the value.
Parameters
- $settings
(array)(Required)Settings to process.
- $preset_metadata
(array)(Required)One of the PRESETS_METADATA values.
- $origins
(array)(Optional)List of origins to process.
Default value: null
Return
(array) Array of presets where the key and value are both the slug.
Source
File: wp-includes/class-wp-theme-json.php
protected static function get_settings_slugs( $settings, $preset_metadata, $origins = null ) { if ( null === $origins ) { $origins = static::VALID_ORIGINS; } $preset_per_origin = _wp_array_get( $settings, $preset_metadata['path'], array() ); $result = array(); foreach ( $origins as $origin ) { if ( ! isset( $preset_per_origin[ $origin ] ) ) { continue; } foreach ( $preset_per_origin[ $origin ] as $preset ) { $slug = _wp_to_kebab_case( $preset['slug'] ); // Use the array as a set so we don't get duplicates. $result[ $slug ] = $slug; } } return $result; }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
5.9.0 | Introduced. |