如何使用 CakePHP 重用视图中的公共部分
你好。
这是开发团队的Hase。
我经常使用CakePHP进行开发,
在编写视图时,我总是将
头部、页眉和页脚等公共部分写入单独的文件中。
但是如果这样写的话,如果需要修改的话,
就得把每个文件都一一修改,非常困难和麻烦。 。
基于此,我想到有一种方法可以将公共部分组合在一起,经过一番研究,
我找到了一种方法,并将其介绍给大家。
方法
1、在app/View/Elements/下创建一个通用布局的View文件
首先,在app/View/Elements/下创建一个通用布局。
文件名为{任意文件名}.ctp,与普通View相同。
这次我们使用 head.ctp、header.ctp、footer.ctp。
只需复制并粘贴普通视图中编写的头部、页眉和页脚部分即可。
对了,也可以在app/View/Elements/下创建一个目录,将View文件放在下面。
示例:app/View/Elements/Admin/header.ctp 等。
2. 在普通视图中加载之前创建的文件
到你想阅读的部分
// 公共头<?php echo $this->element('head'); ?> // 公共头<?php echo $this->element('header'); ?> // 公共页脚<?php echo $this->元素('头');
如果你写这个,你之前创建的文件将被自动加载。
另外,如果您创建了像 app/View/Elements/Admin/ 这样的目录
// 公共头<?php echo $this->element('Admin/head'); // 公共头<?php echo $this->element('Admin/header'); // 公共页脚<?php echo $this->元素('管理员/头');
如果你写就可以了。
问题
我认为尽管有一些共同点,但还是有很多不同之处。
最常见的是头部内的标题标签。
标题标签元素的内容通常根据页面的不同而变化。
我们也可以处理这些情况。
您可以通过使用关联数组作为 $this->element() 的第二个参数并使用 ["variable name" => "value"] 来
使用示例:
// 元素侧 (head.ctp)<head> ......<title> <?php 回显 $title;</title></head>
// 通常查看端(调用者)<?php echo $this->元素('头',[“标题”=>“顶部”]);
这非常方便,因为你可以这样调用它。
就是这样。
如果您觉得这篇文章有帮助,请点赞!