WP_Font_Face_Resolver::to_theme_file_uriprivate staticWP 6.4.0

Converts each 'file:./' placeholder into a URI to the font file in the theme.

The 'file:./' is specified in the theme's theme.json as a placeholder to be replaced with the URI to the font file's location in the theme. When a "src" beings with this placeholder, it is replaced, converting the src into a URI.

Method of the class: WP_Font_Face_Resolver{}

No Hooks.

Returns

Array. An array of font file src URI(s).

Usage

$result = WP_Font_Face_Resolver::to_theme_file_uri( $src );
$src(array) (required)
An array of font file sources to process.

Changelog

Since 6.4.0 Introduced.

WP_Font_Face_Resolver::to_theme_file_uri() code WP 7.0

private static function to_theme_file_uri( array $src ) {
	$placeholder = 'file:./';

	foreach ( $src as $src_key => $src_url ) {
		// Skip if the src doesn't start with the placeholder, as there's nothing to replace.
		if ( ! str_starts_with( $src_url, $placeholder ) ) {
			continue;
		}

		$src_file        = str_replace( $placeholder, '', $src_url );
		$src[ $src_key ] = get_theme_file_uri( $src_file );
	}

	return $src;
}