我正在建立一个有很多问题的网站。我正在尝试合并一个新的导航栏,该导航栏将在'header.php'文件中编码。我想使用<?php include('header.php') ?>
在index.php和其他页面中调用它,但页面存在差异,并且需要header.php是动态的。我希望header.php在被特定页面调用时稍微改变一下。如何动态更改header.php文件,具体取决于所谓的页面?
这是我的代码:
的header.php
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/angel-header.css">
<!-- RENAME THIS CSS FILE APPROPRIATELY -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body class="m-price_update price_starway vb lang-en webp">
<header class="angelmod-site-header">
<div class="angelmod-wrapper">
<a href="#">
<img src="img/logo_sb.png" alt="Small Builders">
</a>
<nav class="angelmod-site-nav">
<ul class="angelmod-nav-list">
<li><a href="#">Home</a>
</li>
<li><a href="#">Products</a>
</li>
<li><a href="#">Signup</a>
</li>
<li><a href="#">Login</a>
</li>
</ul>
</nav>
<div class="angel-mod-navbtn">
<div class="angel-mod-navbtn-bars"></div>
<div class="angel-mod-navbtn-bars"></div>
<div class="angel-mod-navbtn-bars"></div>
</div>
</div>
<script src="js/angel-header.js"></script>
<!-- RENAME THIS JS FILE APPROPRIATELY -->
</header>
我有一个需要将body标签更改为:<body class="m-price_update price_starway vb lang-en webp">
的products.php文件,此时header.php只有<body>
。
请不要问为什么身体因页面而异,这是以前的开发工作,我的任务是不要改变它们。
答案 0 :(得分:2)
执行包含的文件中定义的任何变量都将在包含的文件中提供。只需在包含文件中定义一个变量,用于标识所包含文件中需要完成的操作。
// products.php
$include_option = 'products';
include('header.php');
然后在包含的文件中,在适当的地方引用该变量,有条件地做任何需要做的事情:
// header.php
...
<?php if ($include_option == 'products') { ?>
<body class="m-price_update price_starway vb lang-en webp">
<?php } else { ?>
<body class="something else">
<?php } ?>
...