我有一些显示Wordpress功能图像的代码。 如果尚未设置要素图像,则应显示默认图像。 出于某种原因,如果没有找到特色图片,我的代码会返回URL参数的空白值。
因此输出代码显示为......
background-image:url()
而不是
background-image:url(http://website/image.jpg)
任何帮助表示感谢。
<?php
add_option( 'default_image', 'http://website/image.jpg', '', 'yes' );
if (has_post_thumbnail( $post->ID ) ){
$image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' );
} else {
$image = get_option( 'default_image' );
}
?>
<div class="news-image" style="background-image: url(<?php echo $image[0]; ?>);">
答案 0 :(得分:1)
经过一番讨论后,似乎有了
if (has_post_thumbnail( $post->ID ) )
即使$ post没有缩略图,也会返回true。
此问题似乎已经出现在someone。
在我们的案例中,该主题通过以下代码解决:
<?php
add_option( 'default_image', 'http://website/image.jpg', '', 'yes' );
$image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' );
if ( !$image ){
$image[0] = get_option( 'default_image' );
}
?>
<div class="news-image" style="background-image: url(<?php echo $image[0]; ?>);">
希望它可以帮助你们所有人
答案 1 :(得分:0)
这可能是因为从数据库返回时,您的图像变量是一个字符串。你可以改变
$image = get_option( 'default_image' );
到
$image[0] = get_option( 'default_image' );
它应该有用。