CMS永久链接和模板系统如何


CMS permalink and templating system how to?

我想了解如何在php网站上使用模板系统和永久链接:D!。。

,让我多描述一下我自己

1.目前我有20个文件,每个文件都有自己的php逻辑(index.php、wizard.php、search.php等)ALL使用相同的类和includes。(install.php包括我项目中所有类所需的所有内容,abd u require_one(install.php)包含在所有文件中)

我想把我的网站改造成。

Analyze URL requested ---> IDENTIFY requested page ---> GET TEMPLATE for THIS PAGE -->MODIFY header(meta) and footer(javascript) ---> add logic ---> display page :D.

有人能让我走上正确的学习轨道吗!。因为我已经完全用oop对我的网站进行了编码,并从MYSQL(简单的小型CMS)动态加载了所有内容,但我不知道如何在不重复自己的情况下将模板和php连接到索引中,并为我的网页中的每个页面创建不同的文件!(每个文件当然做不同的工作,比如文件用户。php做登录和注册以及用户档案等)

希望我的英语不是太差,你能理解我的问题:D!

到目前为止,我目前的做法是:

Mysql表:page_tbl列:pagename、LogicFile、templateFile、MetaTag。

index.php?页面名称

将检查是否尚未缓存或未列出以进行更改它将:

Mysql:SELECT * WHERE pagename='$_GET['page']'

loginfiles=cars.php,search.php(将被分解为,并包含在内)模板文件=也将根据MetaTag进行分解和修改。元标记:序列化了具有['name']=['value']的assoc数组;

然后我开始缓冲输出,用新的描述和关键字替换模板(自动生成)包括逻辑文件include footer.php(包括脚本)

我是接近正确的溃败还是仍然很远?或者我是不是失去了跟踪并过度杀死了

如果您不确定是要编写自己的,还是使用现有的。

  • 这可能是一次非常有意义的经历,但写自己的东西非常耗时
  • 如果你手头有一项任务需要解决,那就使用现有的任务

也就是说,有很多模板系统,smarty是寿命最长的一个。您可以在phpbuilder上找到关于5个流行的简短讨论。

您还可以考虑整个框架。它们不仅仅是一个模板系统,其中包括数据库、ajax助手等ZendCakePHPCodeigniter是流行的。您可以在phpframework中找到它们的比较。

最好的方法是走这条路线:

  • 解析请求数据
  • 确定将使用的控制器
  • 在控制器中,选择布局和模板[布局"包含"模板,它包含所有页面通用的内容,模板具有特定于请求的内容]
  • 在控制器中也从数据库中获取数据[MMVP方式]
  • 将数据分配给数组并将其传递给布局,它将进一步将数据传递给模板
  • 在布局和模板中,使用该数组和构造视图中的数据
  • 将所有内容传递到浏览器

这就是框架的工作方式,也没那么糟糕