为相对静态的网站部署内容管理系统的最佳方式


Best way to deploy a Content Management System for a relatively static website?

>我将为我为客户制作的网站创建一个内容管理系统。

该网站将是一个俱乐部页面,允许查询加入俱乐部,注册以及包含照片等的活动页面。

我想知道创建内容管理系统的最佳方式是什么,管理员可以在其中添加新的活动页面,或编辑现有信息,例如标题,标题和段落。我还想产生一种在页面中添加新标题和段落的方法。

我不确定向现有HTML文档添加新标签的最佳方法,或者主页的HTML中应该包含什么,因为之后需要添加新标签和内容。

这是一个给定的项目,因此使用现有的CMS解决方案是不可能的。

为了让您了解我所追求的内容,我的第一个解决方案是创建一个带有 id 的预先确定标签的主页,例如 <p id='p1'></p>然后,我将使用"标签"和"内容"列将数据存储在数据库中即"标签"= p1,"内容"="这是一个段落"。

当用户最初访问主页时,它会触发一个 ajax 请求,以从数据库中获取所有数据,并根据"标签"条目将其注入到标签中。比如,如果"标签"= p1,则getElementById("p1").innerHTML...

但是,这种方法需要我知道要在 html 文档中放置哪些标签。或者,我可以将所有主页的内容存储在一个大的数据库条目中,并在页面加载时返回全部内容。虽然我确信请求和处理这么多数据只是为了显示主页是非常糟糕的做法......还是可以这样做?

任何帮助/链接,您可以阐明此问题,将不胜感激。

非常感谢,话筒

我希望我有你需要的东西,但我认为有多种解决方案。

您可以在 html(不是 ID)中插入一些占位符,并使用 php 替换它们并插入您的内容。

另一种方法是在数据库中定义属于一个页面的节内容。如果请求该页面,则输出属于该页面的所有内容区域。(这可以扩展,在数据库中添加用于格式化、ID 和其他信息的类)。

我的第三个想法是简单地将请求的页面创建为 php 文件,并插入 load_module("p1") 等函数来获取内容。 load_module($module) qould 从数据库中加载模块的内容。

在我看来,您使用javascript动态替换内容的想法是不好的。如果javascript被禁用或javascript文件加载缓慢(例如在移动网络中),则用户看不到任何内容,这将驱逐他(他认为存在技术错误)。