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',
// );

Top ↑

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.

Top ↑

Return

array Array of presets where each key is a slug and each value is the preset value.


Top ↑

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 ) {

Top ↑

Changelog

Changelog
Version Description
5.9.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.