Zend Framework 2 - 在layout.phtml中访问内容页面变量

时间:2012-12-19 10:02:32

标签: variables zend-framework2 layout-page

我想构建一个花哨的标题容器 - 你永远不会猜到它 - 包含显示的每个页面的标题。

Django中,您可以在每个视图中创建一个传递给布局页面的变量,或者定义一个在内容页面上填充内容的块。

它不是一个很好的解决方案副本,并在我的应用程序的每个页面上粘贴我的花哨的标题只是为了放入我的页面标题。我更喜欢将标题容器放在我的布局页面中并使用我的$title变量以在容器中设置标题。

我找到了静态变量here的解决方案,但我需要一个动态变量,因为每个页面的标题都不同。

我的问题:是否有一种简单的方法可以将我在每个内容页面上的$title变量传递给我的layout.phtml?

谢谢!

2 个答案:

答案 0 :(得分:1)

ZF中有一个很好的视图,可以帮助完成这项任务。您可以在视图文件中定义要用于页面的标题。

在您的视图页面中:

//index.tmpl
$this->headTitle("this is my unique title for this page");

在布局文件中:

<title><?php echo $this->headTitle() ?></title>

更多信息请访问:http://framework.zend.com/manual/2.0/en/modules/zend.view.helpers.head-title.html

答案 1 :(得分:0)

好的,如果你知道要找什么,答案很简单。使用placeholder helper

//layout.phtml
<?php $this->placeholder('foo')->set("Some text for later") ?>

//myview.phtml
<?php
   echo $this->placeholder('foo');
   // outputs "Some text for later"
?>