в фоновом изображении URL я получил [site_url] вместо реального URL в WordPress - PullRequest
0 голосов
/ 04 февраля 2019

Я использовал add_theme_option ('custom-background') в моем файле wordpress functions.php.И это работает, но когда я устанавливаю фоновое изображение, у меня нет изображения.В стиле страницы он показывает [site_url] в URL.Но мне нужно показать localhost / wordpress вместо [site_url]. Строка стиля приведена ниже:

background-image: url ("http://[site_url]/wp-content/uploads/2019/02/pexels-photo-958168.jpeg");

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

У меня есть альтернативные решения.Проблема с темой.Другая тема работает правильно.Для этой темы я сделал это:

<body <?php body_class();?> style="background-image: url('<?php echo substr(get_background_image(),11);?>')">

Теперь он возвращается - "wp-content / uploads / 2019/02 / bg.jpeg".И я получу фоновое изображение динамически.

0 голосов
/ 05 февраля 2019

Вы, вероятно, имеете в виду add_theme_support(), а не add_theme_option().

Не знаю, почему это происходит, но обходной путь может быть немного подправлен предложением Эммы.Что-то вроде

<?php $url = parse_url(get_background_image(), PHP_URL_PATH); ?>
<div 
    class="myClass" 
    style="background-image: url(<?php echo $url?>)">
</div>

(Вероятно, также необходимо проверить, является ли URL-адрес исходного изображения пустым или нет.) (И, конечно, это предполагает, что установка WordPress находится в корне сайта. В противном случае могут потребоваться дополнительные изменения)и это может закончиться тем, что больше похоже на Эмму. Я мог бы также добавить, что вместо этого вы можете использовать jquery на стороне клиента для исправления проблемного URL.)

...