PHP - 使用 Active_Page 在两个或多个类别的包含中显示事件页面以进行导航

标签 php html css navigation

我正在使用 Active_Page 来显示我所在的页面,因为我的导航包含在内,但是我有一个多级导航,如果我在 Print.php 页面上,我想将两者都突出显示为事件页面,我希望突出显示“我们做什么”选项卡以及“我们做什么”选项卡中的“打印”选项卡。


导航包含


              <li>
                <a href="#" id="<?php if (ACTIVE_PAGE == "What We Do") echo "active"; ?>">What We Do</a>
                <ul>
                  <li>
                       <a href="index.html#modal">Portfolios</a>
                    <ul>
                      <li><a href="solportfolios.php" id="<?php if (ACTIVE_PAGE == "Port-Solicitors") echo "active"; ?>">Solicitors</a></li>
                      <li><a href="esportfolios.php" id="<?php if (ACTIVE_PAGE == "Port-Estate-Agents") echo "active"; ?>">Estate Agents</a></li>
                      <li><a href="miscportfolios.php" id="<?php if (ACTIVE_PAGE == "Port-Additional") echo "active"; ?>">Additional</a></li>
                    </ul>
                  </li>
                  <li>
                    <a href="print.php" id="<?php if (ACTIVE_PAGE == "Print") echo "active"; ?>">Print</a>
                  </li>
                  <li>
                    <a href="web.php" id="<?php if (ACTIVE_PAGE == "Web") echo "active"; ?>">Web Design</a>
                  </li>
                  <li>
                    <a href="services.php" id="<?php if (ACTIVE_PAGE == "Additional Services") echo "active"; ?>">Additional Services</a>
                  </li>
                </ul>
              </li>

事件主页


<?php
          define ('ACTIVE_PAGE',"Port-Estate-Agents");
          define ('ACTIVE_PAGE',"What We Do");
          include ('inc/nav.inc.php');   
      ?>

也试过..


  <?php
          define ('ACTIVE_PAGE',"Port-Estate-Agents","What We Do");
          include ('inc/nav.inc.php'); 


    ?>


<?php
          define ('ACTIVE_PAGE',"Port-Estate-Agents, What We Do");
          include ('inc/nav.inc.php'); 


    ?>

最佳答案

好吧,如果你的导航总是只有两层深,你可以只使用两个常量。类似于 ACTIVE_LEVEL1 和 ACTIVE_LEVEL2 的东西。

<?php
      define ('ACTIVE_LEVEL1',"Port-Estate-Agents");
      define ('ACTIVE_LEVEL2',"What We Do");
      include ('inc/nav.inc.php');   
  ?>

虽然这不是所有解决方案中最好的。特别是如果您打算添加第三、第四、第五……级别。如果您打算这样做,您应该将导航结构建模为树。这可以使用嵌套数组或完全成熟的基于数据库的树。不是直接检查页面是否处于事件状态,而是调用一个方法来检查给定的页面是否是从树的根到当前事件页面的路径的一部分。

关于PHP - 使用 Active_Page 在两个或多个类别的包含中显示事件页面以进行导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28212813/

相关文章:

javascript - 使用 Javascript 在鼠标悬停时向各个方向平移背景图像

javascript - 无论我水平滚动多少,如何让一个 div 卡在页面的左侧?

jQuery:从表 td 中找到最长的字符串

javascript - 对多个元素使用相同的动画

javascript - 错误: summernote is not a function when using local files

php - 带有准备好的语句的简单 PHP 选择不显示任何结果

php regex 如何删除重复的字符串

php - Symfony Dom Crawler 在模板中缺少结束标记

jquery - Bootstrap :why intlTelinput changes the width of the input element?

html - 幻灯片下拉打开