我有一个网站,其中大部分内容(如侧边栏、背景等)在网站的大多数页面中都是相似的。
在 ASP.NET 中,对于这种情况,有母版页。什么是简单的等价物html
或php
易于使用?(从未使用过 php 工具,网站是简单的 html,但主机是 php 服务器)
其次,有没有什么东西可以避免下载多余的内容并为用户加快速度?
这通常通过包含在 PHP 中完成。查看include()
、include_once()
、require()
和require_once()
。
您可以将页面的各个部分放在各自单独的文件中,并以这种方式单独管理它们。
关于缓存,这只是为您要查找的内容设置适当的缓存标头的问题。最佳做法是将静态资源(JavaScript、CSS 等)保存在自己的单独文件中,以便更轻松地在您的站点中缓存它们。
就个人而言,我总是在 php 网站中使用 smarty.. 因为它为您提供了可能性,例如在 dot net 中将代码与标记分开。
我通常会做这样的事情
class masterpage
{
protected $subpage;
public function output()
{
$smarty = new Smarty();
$smarty->assign('subpage', $this->subpage);
return $smarty->fetch('masterpage.tpl');
}
}
class helloworld extends masterpage
{
public function __construct()
{
this->subpage = 'helloworld.tpl';
}
}
class ciao extends masterpage
{
public function __construct()
{
this->subpage = 'ciao.tpl';
}
}
作为模板文件,我有这样的东西
主页:
<html>
<body>
<div>This is the menu that has to be on every page!!!!</div>
{include file="$subpage"}
</body>
</html>
helloworld.tpl:
hey there: Hello world!
ciao.tpl:
hey there: ciao!
通过这种方式,您可以创建用作页面(asp.net webform)的类和一个用作母版页等价物的类母版页。