2013-02-12 46 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