2015-11-04 52 views
1

在CakePHP的佈局我爲了設置頁面的標題像這樣取塊在cakePHP中設置爲控制器名稱的標題塊的默認值?

<title>Example - <?php echo $this->fetch('title');?></title> 

我已經注意到了,除非我創建一個視圖塊「標題」或某個值分配給塊,標題的值總是對應於控制器的名稱。我還沒有在任何地方發現這種行爲。有什麼方法可以改變它嗎?我的CakePHP版本是2.7.5。

+0

可以是您使用該蛋糕的版本,你告訴我? – Fury

回答

0

你可以傳遞一個默認值由$this->fetch()是輸出一個值尚未使用第2參數分配: -

echo $this->fetch('title', 'Default title'); 

要覆蓋默認只使用$this->assign()在您的視圖($this->fetch()前叫): -

$this->assign('title', 'Overridden title'); 
+0

謝謝..它似乎雖然$ this-> fetch('title')_does_返回一個默認值,相應的控制器的名稱..因此,默認值是無用的..爲什麼$ this-> fetch ('title')返回一個默認值?你能證實這種行爲嗎? –

0

在你的控制器

class ExampleController extends AppController { 

    // Set title in default for all this controller methods 
    public $title = "Your title"; 

    // Override the title by setting title in method 
    public function 

     $this->set('title', 'Your title'); 
    } 
} 

在你的佈局或視圖

cakephp 2.x 
<?php echo $this->fetch('title'); ?> 

cakephp 3.x 
<?= $this->fetch('title'); ?> 
相關問題