所以我的网站超过10页。现在我想将头部分,页眉和页脚导出到其他文件,以便于进一步编辑任何这些部分,而无需浏览每一页。是否可以制作header.html并让其他html文件从单独的文件中导入代码?
答案 0 :(得分:2)
您所描述的是“包含”,以及如何使用PHP执行此操作。我建议使用像PHP这样的服务器端语言进行包含,因为它肯定会被Google编入索引,您无需担心用户已禁用javascript或支持不当。
首先,除非您的网页保存为PHP(扩展名为.php)或PHP页面(.html扩展名)正在被PHP解析,否则您将无法执行此操作。显然,你还需要在你的服务器上运行PHP。
获取你想要“包含”的块并将它们保存到自己的文件中(header.php,footer.php等)。将它们放在资产区域下的自己的文件夹中(例如名为includes或inc的目录)。然后,在您的网页中,使用PHP来包含这些文件:
<?php include_once($_SERVER['DOCUMENT_ROOT'].'/include/header.php') ?>
我喜欢使用$_SERVER['DOCUMENT_ROOT']
变量,所以我不需要记住include目录的相对路径。使用该行包括准确放置原始标题html的位置。
如果要将文件保留为HTML但将其解析为PHP,则需要确保服务器将HTML文件解析为PHP。您可以指示服务器在.htaccess
(假设Apache)中执行此操作,您需要这样的行:
AddHandler application/x-httpd-php .php .htm .html
对于不同的主机环境,此行会有所不同,因此您可能需要进行调整。
答案 1 :(得分:1)
您可以将标题和相关文件移动到html文件,只需调用jQuery load即可将其带入。
USAGE http://api.jquery.com/load/
您还可以使用PHP来执行header.php文件的php include_once。这类似于wordpress所做的!
USAGE http://php.net/manual/en/function.include-once.php
祝你好运,如果还有其他问题,请告诉我!
答案 2 :(得分:1)
是的,您的问题是阻止代码重复的一般问题。像往常一样,在过去几年中,通过许多不同的方法解决了这个问题。
还有更多可能的解决方案,列出所有可能的解决方案将是一项非常艰巨的任务,所以我的回答将非常模糊。
答案 3 :(得分:0)
你不能用CSS做到这一点。您可以使用Ajax从分离的文件中调用这些HTML内容(使用jQuery非常简单),或者您可以使用PHP直接包含这些文件。