我正在尝试创建一个通用标题&我整个网站的页脚。但我的网页被组织在不同的文件夹中。我应该如何在PHP文件中定义我的链接,以便我可以将它们包含在所有页面中。在我的menu.php文件的一部分中。
Code:Root
<li>
<a href="company.html" <?php echo $active[2] ?>>COMPANY</a>
<ul>
<li><a href="team.html"><strong>Our</strong> Team</a></li>
<li><a href="index.html#clienteles"><strong>Our</strong> Clientele</a></li>
<li><a href="company.html#testimonials">Testimonials</a></li>
<li><a href="others/profile.html"><strong>Our</strong> Profile</a></li>
</ul>
</li>
Code: Child
<li>
<a href="../company.html" <?php echo $active[2] ?>>COMPANY</a>
<ul>
<li><a href="../team.html"><strong>Our</strong> Team</a></li>
<li><a href="../index.html#clienteles"><strong>Our</strong> Clientele</a></li>
<li><a href="../company.html#testimonials">Testimonials</a></li>
<li><a href="../others/profile.html"><strong>Our</strong> Profile</a></li>
</ul>
</li>
我不想使用绝对路径,因为我正在我的mac上的本地apache服务器上测试该站点。
答案 0 :(得分:0)
你应该使用绝对路径。只需为项目创建一个BASE_URL
常量,并将其指向您的基本URL。之后,只需将其附加到您的URL
<li><a href="<?php echo BASE_URL?>/team.html"><strong>Our</strong> Team</a></li>
...
...
...
<li><a href="<?php echo BASE_URL?>/path/team.html"><strong>Our</strong> Team</a></li>
答案 1 :(得分:0)
我会包含一个文件,可能是config.php,里面有一个绝对路径。这样,即使您在本地测试您的网站,您也只需要更改此网站并将其用于您想要的任何链接。
答案 2 :(得分:0)
如果这些页面位于文档根目录上,则可以在它们前面添加斜杠:
<li><a href="/team.html"><strong>Our</strong> Team</a></li>
在Unix /上将提供到root的路径,无论是http://localhost/team.html
还是http://example.com/team.html
。
答案 3 :(得分:0)
我会使用<base>
tag。一旦包含它,您可以使用相对链接,浏览器将在正确的位置查找。
如果您确实不想在<base>
来回切换不同域的网址,可以尝试使用$_SERVER['HTTP_HOST']
动态设置它。
答案 4 :(得分:0)
我认为最好的解决方案是拥有一个可以渲染布局的对象以及当时想要显示的页面。
您的布局如下所示:
mylayout.phtml
<html>
<head><?php $title ?></head>
<body>
<div id="header"
</div>
<?php include($_GET['webpage']) ?>
<div id="footer">
</div>
</body>
</html>
然后,您将始终只调用同一页面
http://www.mywebsite.com/index.php?webpage=team
然后使用mod重写创建一个.htaccess,将您的网址更改为
http://www.mysite/team/
显示页面似乎有点紧张但是通过花费一些时间来开发结构和标准方式来调用所有页面,您将获得对模板的更大控制,节省编码时间并且每页都有页眉和页脚。