如何使用GET_TEMPLATE_DIRECTORY_URI()加载我的主题的子文件夹中的图像?

时间:2014-01-21 作者:AndreaNobili

如何将子文件夹中的图像插入主题目录?

我有以下情况:在我的自定义主题目录中,我有以下文件夹,其中包含jpg 图片:/assets/img/flexslider/flex-1.jpg

现在在我的header.php 文件,我有这样的东西:

<li>
  <img src="assets/img/flexslider/flex-1.jpg">
  <div class="flex-caption">
    <p class="flex-caption-text">
      <span>Lorem ipsum</span><br>
      <span>sit dolor</span><br>
      <span>adipiscing elitur</span>
    </p>
  </div>
</li>
显然,当我加载页面时,图像flex-1.jpg 没有加载,因为没有正确的路径(事实上,使用FireBug我获得它尝试加载assets/img/flexslider/flex-1.jpg 所以我想我可以使用绝对路径,但这太可怕了!

所以我想用get_template_directory_uri() WordPress提供的函数来实现这一点,我尝试以这种方式更改以前的代码:

<li>
  <img src=<?php get_template_directory_uri().\'/assets/img/flexslider/flex-1.jpg\' ?>>
  <div class="flex-caption">
    <p class="flex-caption-text">
      <span>Lorem ipsum</span><br>
      <span>sit dolor</span><br>
      <span>adipiscing elitur</span>
    </p>
  </div>
</li>
但它不工作,使用FireBug时,我可以看到它没有加载任何内容,事实上,在我的浏览器源代码中,我有:

<img src="">
我错过了什么?

2 个回复
最合适的回答,由SO网友:Raja67 整理而成

您应该回显它,而且您正在错误地关闭php标记。查看生成的o/p的来源以了解一些信息

img<src=<?php echo get_template_directory_uri()."/assets/img/flexslider/flex-1.jpg"?> alt="alternative_name">
或者您可以使用bloginfo 更容易记住和使用(无需回声)

<img src="<?php bloginfo(\'template_url\'); ?>/assets/img/flexslider/flex-1.jpg"/>

SO网友:MD SHAYON

您的functions.php 文件添加此行

add_theme_support( \'custom-logo\' );

$custom_logo_id = get_theme_mod( \'custom_logo\' );
$image = wp_get_attachment_image_src( $custom_logo_id , \'full\' );
echo \'<img src=$image[0] height="100px" />\';

Know more

结束

相关推荐

Featured Images for Tags?

是否可以以某种方式为标记或自定义分类创建特征图像。为了便于解释,我将给出一个可能的功能示例。假设我正在运行一个网站,发布城市中最好的餐厅。我的一些标签可能是伦敦、巴黎、纽约等等。。。我有一个页面可以抓取这些标签并按字母顺序排序。但不仅仅是文本,它还将有标签名(例如伦敦)和该城市的图像。我知道这可以手动完成,但通过将图像附加到标记或自定义分类法,可以使过程变得更简单,尤其是在处理大量标记/自定义分类法时。我认为这可能更像是一个抽象的问题,但我很好奇是否有人遇到过任何成功做到这一点的博客或网站。