0

我有一个具有以下设置的网站:

概览.php hotel1.php hotel2.php hotel3.php

概览有一个侧边栏,其中包含指向酒店 1、2 和 3 的链接,每个酒店页面都有一个侧边栏,其中包含指向其他两家酒店(不包括自身)的链接以及概览页面。

目前,我正在对每个 php 页面中的侧边栏进行硬编码,因为它们都略有不同。

我想知道是否有一种方法可以在一个单独的文件(sidebar.php)中编写一个侧边栏,其中包含指向四个页面中每一个的链接,并使用 php include() 函数添加侧边栏。

然后,根据页面(将有一个标识符)显示所有链接,除了指向自身的链接。

问题是,我不确定该怎么做,或者是否可以做到。

该站点是 php 和 html(带有 css 和 javascript)。

如果它是相关的,我有大约 100 个包含概述的文件夹,然后是多个我想在其上实施的酒店。

4

1 回答 1

2

最简单的方法是将侧边栏代码包装在一个函数中。

边栏.php

<?php
    function print_all_sidebar_links_except_self($self = NULL){
        $hotels_text = array(
            "hotel1" => "Gryffindor Tower",
            "hotel2" => "Ravenclaw Tower",
            "hotel3" => "Slytherin Dungeons"
        );

        if (isset($self)){
            unset($hotels_text[$self]);
        }

        foreach ($hotels_text as $page => $name){
            echo "<a href='".$page.".php'>".$name."</a>";
        }
    }
?>
  • 概述.php print_all_sidebar_links_except_self():;
  • 酒店1.php:print_all_sidebar_links_except_self('hotel1');
  • 酒店2.php:print_all_sidebar_links_except_self('hotel2');
  • 酒店3.php:print_all_sidebar_links_except_self('hotel3');
于 2013-09-10T17:09:40.560 回答