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



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

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

这不是一个很好的解决方案,将我的花哨标题复制并粘贴到应用程序的每个页面上,只是为了放置我的页面标题。我更愿意将标题容器放在布局页面中,并使用我的$title变量在容器中设置标题。

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

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

谢谢!

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

好的,如果你知道要寻找什么,答案很简单。使用占位符帮助程序。

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

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

最新更新