我正在使用PHP构建一个站点并使用包含该页脚的include包含以下标记:
<footer id="main-footer>
<p>footer text</p>
</footer>
整个网站中有一些我希望修改页脚的实例 - 以特定于给定页面的方式 - 附加一个类附加到footer
元素;例如,附加一类&#34; bio&#34;修改生物页面上页脚的外观。
理想情况下,我想配置PHP,以便只在必要时添加类;因此,对于整个站点中不需要自定义页脚的大多数页面,该元素不会附加任何附加类。
我如何在PHP中实现这一目标?感谢您的任何反馈。
答案 0 :(得分:1)
我想你会在这里找到答案: passing parameters to php include/require construct
无法通过include
或require
传递参数,以向页脚指示您在此页面或该页面上。但是,页脚中可以使用相同作用域中的变量,因此您可以声明类似的内容:
$custom_design = true;
include('my_footer.php');
在页脚中使用if($custom_design)...
。
答案 1 :(得分:1)
它有点宽泛,因为我们不知道你是如何包含它的,但PHP中最直接的方法是检查变量的存在并包括基于此的类。如果变量存在;包括它,否则不包括。
然后任何需要它的页面都可以简单地设置变量,它应该可以工作。
(如果这对您不起作用,请提供有关如何包含页面等的更多信息)
<footer <?php if( isset( $expandedFooter )) { echo 'class="' . $expandedFooter . '"'; } ?> id="main-footer">
然后,包含此行的任何页面都将具有额外的页脚类:
$expandedFooter = "someClassName";
任何没有它的类都不会包含额外的页脚,但由于我们使用的是isset而不是测试变量的实际值,它也不会因为缺少变量而抛出任何警告。 (如果变量根本不存在,会产生警告)