在cakephp布局中,我获取一个块以便像这样设置页面的标题
<title>Example - <?php echo $this->fetch('title');?></title>
我注意到除非我创建一个块标题&#39;在视图中或为块指定一些值时,title的值始终对应于控制器的名称。我没有在任何地方发现这种行为。有没有办法改变这个?我的cakePHP版本是2.7.5。
答案 0 :(得分:0)
如果尚未使用第二个参数分配值,则可以传递默认值$this->fetch()
: -
echo $this->fetch('title', 'Default title');
要覆盖默认设置,只需在视图中使用$this->assign()
(在调用$this->fetch()
之前): -
$this->assign('title', 'Overridden title');
答案 1 :(得分: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'); ?>