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

时间:2011-06-06 20:50:14

标签: php mysql content-management-system templating

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

让我更多地描述自己,

1.目前我有20个文件,每个都有自己的php逻辑(index.php,wizard.php,search.php等) 所有使用相同的类和包括。(install.php包括我的项目中所有类的所有必需的所有文件中的require_once(install.php))

我想把我的网站改造成。

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

有些人可以把我放在正确的学习轨道上:D!因为我在oop中完全编码了我的网站,并从MYSQL(简单的小型CMS)动态地加载了所有内容,但我不知道如何将模板和php加入索引而不重复我自己并为我的网页中的每个页面创建不同的文件! (每个文件当然做不同的工作,比如文件users.php做登录和注册以及userprofile等)

希望我的英语太糟糕了,你能理解我的问题:D!

目前我的方法:

Mysql表:page_tbl columns:pagename,LogicFile,templateFile,MetaTag。

的index.php?页面名

将检查是否已经缓存或未列出以进行追踪:

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

loginfiles = cars.php,search.php(将会爆炸,并包含在内) 模板文件 =也会根据MetaTag进行爆炸和修改。 Metatag :带有['name'] = ['value']的序列化关联数组;

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

我接近正确的溃败还是很远?或者我是否失去了追踪和杀戮

2 个答案:

答案 0 :(得分:2)

如果您不确定是想自己编写,还是使用现有文件。

  • 这将是一个非常有可能非常有益的经历,但是写一个非常耗时的经历。
  • 如果您有一项需要解决的任务,请使用现有的任务。

据说有很多模板系统, smarty 是最长寿的系统。您可以在5 popular ones at phpbuilder找到简短的讨论。

您还可以考虑整个框架。它们不仅仅是一个模板系统,还包括数据库内容,ajax助手等。 Zend CakePHP Codeigniter 是受欢迎的。您可以找到comparisons of these at phpframeworks.

答案 1 :(得分:1)

最好的方法是走这条路:

  • 解析请求数据
  • 确定将使用的控制器
  • 在控制器选择布局和模板[布局“包含”模板,它保存所有页面共有的内容,模板具有特定于请求的内容]
  • 控制器中的
  • 也从数据库[MVP方式]
  • 获取数据
  • 将数据分配给数组并将其传递给布局,它会将数据传递给模板
  • 布局和模板中的
  • 使用来自该数组和构造视图的数据
  • 将所有内容传递给浏览器

这是框架的工作方式,并没有那么糟糕。 ]