WP_Font_Face_Resolver::parse_settings
Parse theme.json settings to extract font definitions with variations grouped by font-family.
Method of the class: WP_Font_Face_Resolver{}
No Hooks.
Returns
Array. Returns an array of fonts, grouped by font-family.
Usage
$result = WP_Font_Face_Resolver::parse_settings( $settings );
- $settings(array) (required)
- Font settings to parse.
Changelog
| Since 6.4.0 | Introduced. |
WP_Font_Face_Resolver::parse_settings() WP Font Face Resolver::parse settings code WP 6.9.1
private static function parse_settings( array $settings ) {
$fonts = array();
foreach ( $settings['typography']['fontFamilies'] as $font_families ) {
foreach ( $font_families as $definition ) {
// Skip if "fontFace" is not defined, meaning there are no variations.
if ( empty( $definition['fontFace'] ) ) {
continue;
}
// Skip if "fontFamily" is not defined.
if ( empty( $definition['fontFamily'] ) ) {
continue;
}
$font_family_name = static::maybe_parse_name_from_comma_separated_list( $definition['fontFamily'] );
// Skip if no font family is defined.
if ( empty( $font_family_name ) ) {
continue;
}
$fonts[] = static::convert_font_face_properties( $definition['fontFace'], $font_family_name );
}
}
return $fonts;
}