Drupal 7 - 将图像添加到node.tlp.php主题文件中

时间:2011-03-18 14:59:44

标签: drupal drupal-7

我正在尝试添加一个图像(小箭头gif图标),该图像被上传到我的Drupal主题文件(root / sites / all / themes / mytheme / images)中的图像目录。

以下工作在page.tlp.php级别,它也在field.tlp.php级别工作 - 但它在node.tlp.php中不起作用。 node.tlp.php文件正在有效工作,但图像没有显示!如果我将完全相同的代码粘贴到上面提到的其他模板中,它会显示.. ??

<img src="<?php print base_path() . path_to_theme(); ?>/images/arrow-right.gif" width="20" height="13" alt="Arrow Right">

我应该如何在node.tlp.php文件中引用图像?

谢谢!

3 个答案:

答案 0 :(得分:5)

使用drupal_get_path()代替path_to_theme()可能会有效,值得一试

<img src="<?php print base_path() . drupal_get_path('theme', 'THEMENAME'); ?>/images/arrow-right.gif" width="20" height="13" alt="Arrow Right">

建议Here

答案 1 :(得分:1)

我想知道为什么不在node.tpl.php文件中使用$ directory变量。它在Drupal 6中可用,似乎也为D7工作。

所以代码应该是这样的:

<img src="/<?php print $directory; ?>/images/arrow-right.gif" width="20" height="13" alt="Arrow Right">

答案 2 :(得分:0)

使用GLOBAL变量数组。它们总是可用的,因为它们是全球性的。 它们以阵列形式提供。

我只想在template.php中创建一个新变量,以保持模板文件的清洁:

   // helper variable path to theme
function mytheme_preprocess_node(&$vars) {
$vars['thefullpath'] = $GLOBALS['base_url'] . "/" . $GLOBALS['theme_path'];
}

然后在你的模板文件中:

<img src="/<?php print $thefullpath; ?>/images/arrow-right.gif" width="20" height="13" alt="Arrow Right">

此处的文档: http://api.drupal.org/api/drupal/globals/7