突出显示标题中的当前项目 php

Highlight current item in the heading php

所以我想知道如何在网站标题中突出显示当前页面。我在所有页面中都使用了include方法调用了heading,但是如何在每个页面保持include方法的同时高亮显示当前页面呢

HEADER.PHP


        <div id="site-content">
            
            <header class="site-header">
                <div class="container">
                    <a href="index.php" id="branding">
                        <img src="images/logo.png" alt="Company Name" class="logo" width="100">
                        <div class="branding-copy">
                            <h1 class="site-title" style="font-size:60px;">Benedicto Law</h1>
                            <small class="site-description">Justice In Words</small>
                        </div>
                    </a>

                    <nav class="main-navigation">
                        <button type="button" class="menu-toggle"><i class="fa fa-bars"></i></button>
                        <ul class="menu">
                            <li class="menu-item"><a href="index.php">Home</a></li>
                            
                            <li class="menu-item"><a href="attorney.php">Attorney</a></li>
                            <li class="menu-item"><a href="service.php">Service</a></li>
                            <li class="menu-item"><a href="contact.php">Contact</a></li>
                        </ul>
                    </nav>
                    <nav class="mobile-navigation"></nav>
                </div>
            </header> <!-- .site-header -->

那我只用了 <?php include_once('header.php') ?> 用于将其调用到其他页面。 我希望它突出显示用户所在的当前菜单项。 例如: 用户按下 Attorney 按钮,标题中的 Attorney 按钮应该高亮显示。 感谢您的帮助,谢谢

您至少有 2 个选项。

1.手动传递PHP中的数据

在您的 include(header 语句之前,为 onPage 创建一个变量并设置它。然后在你的包含中使用它。

例如:

<?php  
$onPage = 'attorney';
include_once('header.php') ?>

然后在 header.php 中,像这样检查它:

<li class="menu-item <?php if ($onPage == 'attorney') echo 'active'; ?>"><a href="attorney.php">Attorney</a></li>

2。自动检测

在header.php

$onPage = $_SERVER['PHP_SELF'];
// make sure it's getting just the page, no directory
$onPage= explode("/",$onPage);
$onPage = $onPage[count($onPage-1)];
// remove .php and make sure its lower case
$onPage = str_replace(".php", "", strtolower($onPage));
// for /directory/Attorney.php this will give you 'attorney'

像以前一样检查它

<li class="menu-item <?php if ($onPage == 'attorney') echo 'active'; ?>"><a href="attorney.php">Attorney</a></li>