我在使用php来控制导航链接是否根据$ CURRENT_PAGE变量设置为“活动”类时遇到问题。
这是每个网站页面文件中都包含的navigation.php文件。
<div class="container mt-3">
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link <?php if ($CURRENT_PAGE == "Index") {?>active<?php }?>" href="index.php">Home</a>
</li>
<li class="nav-item">
<a class="nav-link <?php if ($CURRENT_PAGE == "About") {?>active<?php }?>" href="about.php">About Us</a>
</li>
<li class="nav-item">
<a class="nav-link <?php if ($CURRENT_PAGE == "Contact") {?>active<?php }?>" href="contact.php">Contact</a>
</li>
</ul>
</div>
以下是用于设置$ CURRENT_PAGE变量的配置文件:
<?php
switch ($_SERVER["SCRIPT_NAME"]) {
case "/php-template/about.php":
$CURRENT_PAGE = "About";
$PAGE_TITLE = "About Us";
break;
case "/php-template/contact.php":
$CURRENT_PAGE = "Contact";
$PAGE_TITLE = "Contact Us";
break;
default:
$CURRENT_PAGE = "Index";
$PAGE_TITLE = "Welcome to my homepage!";
}
?>
作为我的模板的参考,我正在使用本文中的源代码模板。 https://medium.com/@stevesohcot/sample-basic-php-template-for-file-structure-with-example-code-47ff6d610191
关于我遇到的问题,活动类仅显示在主页链接上,即使我在其他页面(例如联系页面)上也是如此。当我将鼠标悬停在导航链接“关于”和“联系”上时,活动类会启动,但是仅当我将鼠标悬停在“关于”和“联系”导航链接中的任何一个上时才启动。也许这与我正在使用的引导程序类有关?
答案 0 :(得分:0)
只需从案例中删除/ php-template /