2013-02-12 57 views
1

我对Drupal 7中的博客页面有一种看法,即使用“.tpl.php”或模板文件重写,以便我可以使用自己的自定义HTML并添加标题。

通常情况下,可以使用$title$block->subject在模板文件中访问视图的标题,但这不适用于我的视图模板文件。

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

奇怪的是,标题将显示在视图预览中,以及数据库查询(也称为字段)的结果。

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

回答

3

首先,在视图设置页面进入“其他”部分下的“主题:信息”。您可以在这里找到可用于覆盖视图输出的文件名列表。因此,如果您的视图被称为“测试视图”,那么您应该在your_theme/templates/views/文件夹内创建一个名为views-view--test-view.tpl.php的文件来覆盖视图的显示设置。

在该文件中,把下面的:

<?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)来打印它们的内容,以了解其中的内容。

+0

我实际上不知道这是否100%正确。如果你在一个视图中有多个页面,并且你为每个页面设置了一个不同的标题,那么你就不用这个代码来获得这个标题。 – Evans 2015-04-28 10:48:10