Неправильный путь изображения внутри встроенных стилей в голове

Я добавляю некоторые встроенные стили в <head> используя file_get_contents(some-style.css) и wp_head . Мои относительные пути изображения не работают, когда они добавляются в голову, хотя они работают, если я просто использую <link> для загрузки файла.

Мой путь:

 theme_dir/assets/imgs/my_image.jpg 

Я пробовал:

 '/assets/imgs/my_image.jpg' '../assets/imgs/my_image.jpg' 'assets/imgs/my_image.jpg' 

Единственное решение, которое я имею в этой проблеме, – это поиск и замена результатов file_get_contents и добавление к нему пути template_directory_uri . Я бы предпочел не делать этого.

Я также попытался добавить базовый url как каталог темы, который решил проблему, но затем я создаю другие проблемы (например, хеши не будут работать).

Я также знаю о функции wp_add_inline_style , но для этого требуется еще один стиль, который я пытаюсь избежать.

Есть ли лучшее решение для того, чего я пытаюсь достичь? Или есть путь, который я могу использовать?

Если они встроены, ваши пути к изображениям должны быть /wp-content/themes/theme_name/ а затем независимо от того, в каком каталоге находится.

Поскольку вы уже загружаете их через file_get_contents() , почему бы не выполнить поиск и заменить и использовать полный URL-адрес для них? При правильном кэшировании это не должно влиять на время загрузки.

Обычный способ заключается в том, чтобы вставить ваши стили в wp_enqueue_style() . Плагины, такие как W3 Total Cache или WP-Optimize, предлагают решения для слияния всех загруженных стилей – это будет работать только в том случае, если вы правильно разместите их в очереди, а не вставляете их.