Drupal 7:显示图像而不是节点标题

时间:2012-01-23 17:59:35

标签: php drupal-7

Drupal 7中的Normaly我们有node.tpl.php

<?php print render($title_prefix); ?>
    <?php if (!$page): ?>
        <h2<?php print $title_attributes; ?>>
            <a href="<?php print $node_url; ?>"><?php print $title; ?></a>
        </h2>
    <?php endif; ?>
<?php print render($title_suffix); ?>

正在取$node_url并将其放在每个节点的标题上。

我确实显示了5个节点(页面):

  • 第一
  • 第二
  • 第三等

我创建了图片First.gifSecond.gif,我想加载图片而不是标题。

我确实检查了各种实现,但没有找到任何解决方案。

[更新] 我确实尝试编辑template.php文件,并添加了用图像替换标题的功能 - 如果图像存在。我在Drupal 7中需要这个 - 请看这里 - http://drupal.org/node/221854

有任何帮助吗?感谢..

1 个答案:

答案 0 :(得分:0)

由于每个节点都有自己的ID,因此我建议您使用filesnode-12等特定node-13文件夹中的图像。

node.tpl.php

<?php
// path to our file depending on node id
$file = "path/to/file/node-{$node->nid}.gif";

// check if file exists
if (file_exists($file)) {
    // theme $title as image with theme_image()
    $title = theme('image', array('path' => $file));
}
?>

<h2<?php print $title_attributes; ?>>
    <a href="<?php print $node_url; ?>"><?php print $title; ?></a>
</h2>

但是我确信这不是最好的开发方式,但它适合你的问题。