Wordpress以后备为特色的图象作为背景图象

时间:2017-10-22 15:59:07

标签: php wordpress image fallback featured

这是我第一次涉足Wordpress而我正试图创建一个帖子页面。我已经推出了精选图片,但如果没有精选图片,我会尝试将其换成后备图片。

目前看起来像这样(循环中的obvs):

def a():
    print('Hello World')
    return 42

def f():
    return a()

def g():
    a()

f_return_val = f()
print(f_return_val)

g_return_val = g()
print(g_return_val)

这很棒,因为它拉出了我用echo $ thumb位置放置的url。

我想我需要以某种方式将$ thumb定义为缩略图网址或其他网址,但不确定如何?

我已成功将其作为列表页面的图片代码,但如果可以的话,我希望能够将其作为背景图片(只需拉入网址)。

这是该列表目前使用的内容 - 但仅适用于img标记。

<?php $thumb = get_the_post_thumbnail_url(); ?>

<div class="news-hero" style="background-image: url('<?php echo $thumb;?>')">
     <div class="page-title"><h1><?php the_title(); ?></h1></div>
</div>

设计漂亮的图片比使其工作容易得多:-p

感谢任何人都能给予的帮助。

2 个答案:

答案 0 :(得分:0)

试试这个:

<?php 
//define fallback image path
$thumb = bloginfo('template_directory').'/img/news/fallback-image.jpg';
if ( has_post_thumbnail() ) {  
//override  fallback image if post has any thumbnail
$thumb = get_the_post_thumbnail_url();
 }
 ?>

<div class="news-hero" style="background-image: url('<?php echo $thumb;?>')">
     <div class="page-title"><h1><?php the_title(); ?></h1></div>
</div>

答案 1 :(得分:0)

出于某种原因,上面会在页面上将模板目录生成为纯文本。如果我回复$thumb = bloginfo('template_directory').'/img/news/fallback-image.jpg';,它会显示正确的网址。

但是当在背景图片中作为网址回叫时<div class="news-hero" style="background-image: url('<?php echo $thumb;?>')">它没有工作。

当我将$thumb = bloginfo('template_directory')更改为$thumb = get_template_directory_uri()时,一切正常。我不知道为什么我会相信他们做同样的事情。 (bloginfo(&#39; template_directory&#39;)然后执行get_template_directory_uri)。

但它有效,所以我对此很好......