有没有办法用HTML来调用另一个文件?类似于php包括?

时间:2015-04-08 22:49:47

标签: php html html5 twitter-bootstrap

是否有HTML非PHP方式调用文件?例如,我正在开发一个大型网站,当我想要编辑菜单,页脚等时,我不想编辑每个页面。有点像wordpress如何使用php来包含标题/菜单数据,我想要编辑一个文件,但不使用php。我不知道这有多可能。我正在使用HTML5 / Bootstrap / JS开发网站,如果可能的话,我想避免使用php!

3 个答案:

答案 0 :(得分:1)

您可以使用的一种方法是.shtml文件扩展名。

它还具有SSI功能,并且是服务器端,而不是客户端,因此它在服务器上运行。

服务器端包含(SSI)

包含文件的基本语法是:

<!--#include virtual="/footer.html" -->
<!--#include file="footer.html" -->
<!--#include virtual="/cgi-bin/counter.pl" -->

您还可以在包含的文件中包含其他文件。

例如,假设您有一个标题文件<!--#include virtual="/header.shtml" -->,并且您想要包含导航栏,那么就可以了

header.shtml将包含 <!--#include virtual="/nav.shtml" -->

所有内容都在同一个文件中,比如你称之为index.shtml

index.shtml将包含此结构

<!doctype html>
<head>
    <!--#include virtual="/js_files.shtml" -->
    <!--#include virtual="/metatags.shtml" -->
    <title>
    <!--#include virtual="/title.shtml" -->
    </title>
</head>

<body>
    <!--#include virtual="/header.shtml" -->
    <div>Hello world!</div>
    <!--#include virtual="/footer.shtml" -->

</body>
</html>

<!--#include virtual="/header.shtml" -->

您可以将此标记包含在<!--#include virtual="/nav.shtml" -->

中 含

<a href="index.shtml">Home</a> - 
<a href="about.shtml">About</a> - 
<a href="contact.shtml">Info</a>
  • 通过对所有文件使用相同或类似的结构,您对一个(包含)文件所做的任何更改都将在整个网站中受到全局影响。

  • 这是我自己用于某些网站的方法,其中PHP不是必需的,并且使用了很多年并且运行良好,包括基于Bootstrap。


参考文献:

答案 1 :(得分:0)

如果你已经在使用java脚本,那就让我们使用JQuery

使用jQuery:

的index.html:

<html> 
  <head> 
    <script src="jquery.js"></script> 
    <script> 
    $(function(){
      $("#header").load("header.html"); 
      $("#footer").load("footer.html");
    });
    </script> 
  </head> 

  <body> 
     <div id="header"></div>
     <div id="footer"></div>
  </body> 
</html>

了header.html

<p><b> This is my header file </b></p>

footer.html

<p><b> This is my footer file!</b></p>

答案 2 :(得分:0)

您可以使用iframe在另一个页面中包含一个HTML页面。