Php 如何让Zend在每个页面上呈现动态页脚?
在我正在构建的应用程序中,我希望有一个漂亮的页脚,其中包含来自数据库的数据(标签)和一个联系人表单。所有的部分都是脚本,但现在我想把它们放在一起。 加载的每个页面的页脚元素都相同,只是内容不同Php 如何让Zend在每个页面上呈现动态页脚?,php,zend-framework,Php,Zend Framework,在我正在构建的应用程序中,我希望有一个漂亮的页脚,其中包含来自数据库的数据(标签)和一个联系人表单。所有的部分都是脚本,但现在我想把它们放在一起。 加载的每个页面的页脚元素都相同,只是内容不同 如何做到这一点,而不必在每个控制器上添加太多代码?将内容分配给不同的视图变量,然后根据该视图变量打印页脚内容。将内容分配给不同的视图变量,然后根据视图变量打印页脚内容。使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码 下面是一个标签示例。创建一个Tag
如何做到这一点,而不必在每个控制器上添加太多代码?将内容分配给不同的视图变量,然后根据该视图变量打印页脚内容。将内容分配给不同的视图变量,然后根据视图变量打印页脚内容。使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码 下面是一个标签示例。创建一个
Tags.php
文件,其中包含:
class Zend_View_Helper_Tags extends Zend_View_Helper_Abstract {
public function tags() {
// build an array with all the tags and return it
}
}
现在,在您的footer.phtml
上,您可以像这样使用:
<?php $allTags = $this->tags();
foreach ($allTags as $tag) { ?>
<a href="<?php echo $tag['url']; ?>"><?php echo $tag['name']; ?></a>
<?php } ?>
您可以使用partiallop()
获得更清晰的视图。使用。为每个动态信息创建一个帮助器,如标记。然后你可以直接在视图上输出它。这避免了控制器中不必要的代码
下面是一个标签示例。创建一个Tags.php
文件,其中包含:
class Zend_View_Helper_Tags extends Zend_View_Helper_Abstract {
public function tags() {
// build an array with all the tags and return it
}
}
现在,在您的footer.phtml
上,您可以像这样使用:
<?php $allTags = $this->tags();
foreach ($allTags as $tag) { ?>
<a href="<?php echo $tag['url']; ?>"><?php echo $tag['name']; ?></a>
<?php } ?>
您可以使用
partiallop()
来获得更清晰的视图。实现这一点的最佳方法实际上是使用Zend_布局组件来实现两步视图模式。这意味着您将常规视图渲染为普通视图,但随后您需要Zend_Layout获取该输出并将其放置在整个模板中。整个模板将是您放置页脚的地方 最好的方法实际上是使用Zend_布局组件来实现两步视图模式。这意味着您将常规视图渲染为普通视图,但随后您需要Zend_Layout获取该输出并将其放置在整个模板中。整个模板将是您放置页脚的地方 谢谢你的回答!我是这样做的:-)谢谢你的回答!我是这样做的:-)