-1

下面是我试图通过 HTML 代码实现的示例。我很快写了这个来举个例子。

<body>
   <div id="directory_container">
     <a class="directory" href="/home">Home </a>/
     <a class="directory" href="/home/marketplace">Marketplace </a>/
     <a class="directory" href="/home/marketplace/major_products">Major Products</a>
   </div>
</body>

一个很好的例子是一个文件目录,假设您在 C:/ 驱动器中,然后导航到以下目录。

C:\Program Files\Java\jre7\bin

如您所见,计算机了解您当前的位置以及您必须访问的前一个文件 url 才能访问此目录。我可以单击这 5 个位置中的任何一个并立即重新定位到该目录。

这是我希望在我的网站上的内容,但我觉得如果网站要增长并真正增加 500 多个页面,那么使用上面的示例手动执行此操作可能会证明是乏味且难以管理的,而且这是一个很小的价值。这就是为什么我要问是否有一些自动化的方式来提供这个功能,所以如果由于某种原因网站上的 URL 发生变化或路径文件发生变化等,我就不必经历这个。我开始相信这并不容易存在,但我可能是错的,这就是我问这个的原因。

我愿意做 PHP,但只喜欢 HTML/CSS,我认为这是不可能的,因为无论如何你都需要来自服务器的信息。我也想远离 JavaScript / 插件。

如果对我要求的内容有任何其他疑虑,我希望我的措辞更好,我可以提供更多信息和可能的示例。一个很好的例子是 GitHub 以及如何在线导航文件存储。我基本上只想要一个网站,而不是它完全按照 windows 文件夹的工作方式工作。我希望它更像每个 URL 都链接到给定的名称,如果可能的话,我可以根据它执行导航。

这是使用我想要的想法的网站的更好示例。如您所见,我正在寻找一种更好的方法来完成这项工作,而不是手动完成所有工作。

http://services.runescape.com/m=rswiki/en/Medium_Quests https://github.com/git/git/tree/master/git_remote_helpers/git

您会看到它们都提供了这些导航菜单,如果我的问题仍然无法理解,我会尝试查找更多。

4

1 回答 1

1

如果我对您的理解正确,您希望为您的所有页面添加一个菜单,并且希望能够轻松更改此菜单而无需更新 500 多个文件。

您可以通过使用 PHP 包含来实现这一点。首先在你的根目录中创建一个文件并命名它menu.html(如果你喜欢,你也可以使用 PHP 扩展名)所有其他文件应该命名为:index.php(PHP 扩展名,因为我们将在其他文件中使用 PHP)

menu.html文件中,只需按照您的需要构建菜单,在所有其他文件中,您应该包含这样的菜单:

<?php include('/menu.html'); ?>

这将获取菜单文件并将其输出到您放置那一小段代码的文档中。

提示:大多数网站不仅在每个页面上都有一个重复出现的菜单,而且还有一个重复出现的页眉和页脚,也许你可以为这些而不是菜单制作文件。:)

祝你好运!如果您有任何问题随时问。


编辑

您正在寻找的是“面包屑尾巴”,因此用户可以轻松返回上一个目录。不幸的是,没有任何 HTML/CSS 方法可以为您的所有页面自动执行此操作。然而,使用 JavaScript 和 PHP 有很多方法可以做到这一点,谷歌搜索“Automatic Breadcrumbs PHP”或“Automatic Breadcrumbs JavaScript”。

这个小脚本将为您提供一个良好的开端:

<?php
    $page = $_SERVER['PHP_SELF'];
    $currentpage = ucwords(str_replace("-"," ",(basename($page,".php"))));
    $currentdir = ucwords(basename(dirname($page)));
    $topdir = basename(dirname(dirname($page)));
?>
<div id=nav">
    <ul><li><a href="/" id=home">Bandersnatch Cutlery</a>
            <ul><li><a href="/<?php echo $topdir; ?>"><?php echo ucwords($topdir); ?></a>
                <ul><li><a href="../"><?php echo $currentdir; ?></a>
                     <ul><li><a href="#"><?php echo $currentpage; ?></a></li>
                     </ul>
                </li></ul>
            </li></ul>
    </li></ul>
</div> 

来源:http ://demosthenes.info/blog/220/Breadcrumb-navigation-with-PHP (编辑缩进)

于 2013-04-30T14:28:36.147 回答