我正在尝试添加一个图像(小箭头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文件中引用图像?
谢谢!
答案 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">