WP_Theme_JSON::get_settings_values_by_slug( array $settings, array $preset_metadata, string[] $origins ): array
Gets preset values keyed by slugs based on settings and metadata.
Description
$settings = array(
'typography' => array(
'fontFamilies' => array(
array(
'slug' => 'sansSerif',
'fontFamily' => '"Helvetica Neue", sans-serif',
),
array(
'slug' => 'serif',
'colors' => 'Georgia, serif',
)
),
),
);
$meta = array(
'path' => array( 'typography', 'fontFamilies' ),
'value_key' => 'fontFamily',
);
$values_by_slug = get_settings_values_by_slug();
// $values_by_slug === array(
// 'sans-serif' => '"Helvetica Neue", sans-serif',
// 'serif' => 'Georgia, serif',
// );
Parameters
-
$settings
array Required -
Settings to process.
-
$preset_metadata
array Required -
One of the PRESETS_METADATA values.
-
$origins
string[] Required -
List of origins to process.
Return
array Array of presets where each key is a slug and each value is the preset value.
Source
File: wp-includes/class-wp-theme-json.php
.
View all references
* 'fontFamilies' => array(
* array(
* 'slug' => 'sansSerif',
* 'fontFamily' => '"Helvetica Neue", sans-serif',
* ),
* array(
* 'slug' => 'serif',
* 'colors' => 'Georgia, serif',
* )
* ),
* ),
* );
* $meta = array(
* 'path' => array( 'typography', 'fontFamilies' ),
* 'value_key' => 'fontFamily',
* );
* $values_by_slug = get_settings_values_by_slug();
* // $values_by_slug === array(
* // 'sans-serif' => '"Helvetica Neue", sans-serif',
* // 'serif' => 'Georgia, serif',
* // );
* </code>
*
* @since 5.9.0
*
* @param array $settings Settings to process.
* @param array $preset_metadata One of the PRESETS_METADATA values.
* @param string[] $origins List of origins to process.
* @return array Array of presets where each key is a slug and each value is the preset value.
*/
protected static function get_settings_values_by_slug( $settings, $preset_metadata, $origins ) {
Changelog
Version | Description |
---|---|
5.9.0 | Introduced. |