1

我在 Drupal 7 中的博客页面上有一个视图,我使用“.tpl.php”或模板文件覆盖该页面,以便我可以使用自己的自定义 HTML 并添加标题。

通常,可以在模板文件中使用$title或访问视图的标题,$block->subject但这在我的视图模板文件中不起作用。

使用drupal_get_title()简单地显示“博客”,因为页面本身是一个页面模板,但我需要使用 PHP 动态插入到页面模板文件中的块视图的标题。

奇怪的是,标题将与数据库查询的结果(也就是字段)一起显示在视图预览中。

那么,如何访问模板 PHP 文件中通常称为 $title 的变量?

4

1 回答 1

3

首先,在视图设置页面上,进入“其他”部分下的“主题:信息”。在那里,您可以找到可用于覆盖视图输出的文件名列表。

因此,如果您的视图被称为“测试视图”,那么您应该在文件夹中创建一个名为views-view--test-view.tpl.phpyour_theme/templates/views/文件来覆盖视图的显示设置。

在该文件中,输入以下内容:

<?php if($view->human_name) print "<h2>" . $view->human_name . "</h2>"; ?>

然后在“主题:信息”下单击“重新扫描模板文件”按钮,标题现在应该显示在您网站上显示该视图的任何位置。

如果该变量出现空白,您可以通过将以下代码放入该文件中来获得要显示的变量的猜测列表:

<?php
?>
<div>
    <?php $list = array_keys(get_defined_vars()); 
    foreach($list as $key => $value)
        print "$" . $value . ", ";
    die();

    ?>
</div>

这些变量中的每一个都可能是一个对象或数组,因此您可能必须打印它们的内容print_r($variable)var_dump($variable)了解它们内部的内容。

于 2013-02-12T15:41:03.527 回答