функция
since 5.9.0
_wp_normalize_relative_css_links()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
_wp_normalize_relative_css_links( string $css, string $stylesheet_url ): string
Описание
Делает URL-адреса относительными к установке WordPress.
Параметры
$css
string
обязательный
CSS, в котором URL-адреса нужно сделать относительными к установке WordPress.
$stylesheet_url
string
обязательный
URL таблицы стилей.
Возвращаемое значение
string
Исходный код
wp-includes/script-loader.php:3212
function _wp_normalize_relative_css_links( $css, $stylesheet_url ) {
return preg_replace_callback(
'#(url\s*\(\s*[\'"]?\s*)([^\'"\)]+)#',
static function ( $matches ) use ( $stylesheet_url ) {
list( , $prefix, $url ) = $matches;
// Short-circuit if the URL does not require normalization.
if (
str_starts_with( $url, 'http:' ) ||
str_starts_with( $url, 'https:' ) ||
str_starts_with( $url, '/' ) ||
str_starts_with( $url, '#' ) ||
str_starts_with( $url, 'data:' )
) {
return $matches[0];
}
// Build the absolute URL.
$absolute_url = dirname( $stylesheet_url ) . '/' . $url;
$absolute_url = str_replace( '/./', '/', $absolute_url );
// Convert to URL related to the site root.
$url = wp_make_link_relative( $absolute_url );
return $prefix . $url;
},
$css
);
}
История изменений
| Версия | Описание |
|---|---|
| 5.9.0 | Introduced. |

