我有一个wordpress实例,我想通过php函数将背景图像内嵌到html标签中。
html是:
<div id="content" class="site-content" <?php echo get_background_for_single(get_the_ID(), is_single()); ?>>
上面的html和php在浏览器中具有以下输出:
<div id="content" class="site-content" style="background-image: url(" http:="" localhost="" wiese="" wp-content="" uploads="" 2019="" 06="" test.jpg");="">
在functions.php中,我得到了:
function get_background_for_single($ID, $single) {
if ($single == 1) {
return 'style="background-image: url("' . get_the_post_thumbnail_url($ID) . '");';
}
}
如果我按如下所示控制段落中的输出,则显示正确:
<p><?php echo get_background_for_single(get_the_ID(), is_single()); ?><p>
它返回一个p标签:
style="background-image: url("http://localhost/wiese/wp-content/uploads/2019/06/test.jpg");
该函数为什么返回“ =”“而不是” /“?也许这是一个转储错误,但我看不到我的错误。
答案 0 :(得分:0)
将我的功能更改为以下方法:
function get_background_for_single($ID, $single) {
if ($single == 1) {
return 'style="background-image: url("' . get_the_post_thumbnail_url($ID) . '");"';
}
}