为相对静态的网站部署内容管理系统的最佳方式?
Best way to deploy a Content Management System for a relatively static website?
我要为我为客户制作的网站创建一个内容管理系统。
该网站将是一个 club-page,允许查询加入俱乐部、注册以及包含照片等的活动页面。
我想知道创建内容管理系统的最佳方式是什么,管理员可以在其中添加新的活动页面,或编辑现有信息,例如标题、标题和段落。我还想制作一种在页面中添加新标题和段落的方法。
我不确定向现有 HTML 文档添加新标签的最佳方法,或者主页 HTML 中应包含哪些内容,因为新标签和内容需要之后添加。
这是给定的项目,因此无法使用现有的 CMS 解决方案。
为了让您了解我所追求的,我的第一个解决方案是创建一个带有 pre-determined 标签的主页,标签的 ID 例如 <p id='p1'></p>
然后我打算用 'tag' 和 'content' 列将数据存储在数据库中
即 'tag' = p1 和 'content = "This is a paragraph".
当用户最初访问主页时,它会触发一个 ajax 请求以从数据库中获取所有数据并将其注入到基于 'tag' 条目的标签中。
比如,如果 'tag' = p1 那么 getElementById("p1").innerHTML...
但是,这种方法需要我知道要在 html 文档中放置哪些标签。或者,我可以只将所有主页的内容存储在一个大数据库条目中,并在页面加载时 return 全部存储。
虽然我确信请求和处理这么多数据只是为了显示主页是非常糟糕的做法......或者这样做可以吗?
任何 help/links 如果您能阐明这个问题,我们将不胜感激。
非常感谢,
麦克
我希望我有你需要的东西,但我认为有多种解决方案。
您可以在 html 中插入一些占位符(不是 ID)并使用 php 替换它们并插入您的内容。
另一种方法是在您的数据库中定义属于一个页面的部分内容。如果请求页面,则输出属于它的所有内容区域。 (这可以扩展为数据库中的格式、ID 和其他信息添加 类)。
我的第三个想法是简单地将请求的页面创建为 php 文件并插入像 load_module("p1")
这样的函数来获取内容。 load_module($module)
可以从数据库加载模块的内容。
我认为您使用 javascript 动态替换内容的想法很糟糕。如果 javascript 被禁用或 javascript 文件加载缓慢(例如在移动网络中),则用户看不到任何内容,这将导致他被驱逐(他认为存在技术错误)。
我要为我为客户制作的网站创建一个内容管理系统。
该网站将是一个 club-page,允许查询加入俱乐部、注册以及包含照片等的活动页面。
我想知道创建内容管理系统的最佳方式是什么,管理员可以在其中添加新的活动页面,或编辑现有信息,例如标题、标题和段落。我还想制作一种在页面中添加新标题和段落的方法。
我不确定向现有 HTML 文档添加新标签的最佳方法,或者主页 HTML 中应包含哪些内容,因为新标签和内容需要之后添加。
这是给定的项目,因此无法使用现有的 CMS 解决方案。
为了让您了解我所追求的,我的第一个解决方案是创建一个带有 pre-determined 标签的主页,标签的 ID 例如 <p id='p1'></p>
然后我打算用 'tag' 和 'content' 列将数据存储在数据库中
即 'tag' = p1 和 'content = "This is a paragraph".
当用户最初访问主页时,它会触发一个 ajax 请求以从数据库中获取所有数据并将其注入到基于 'tag' 条目的标签中。
比如,如果 'tag' = p1 那么 getElementById("p1").innerHTML...
但是,这种方法需要我知道要在 html 文档中放置哪些标签。或者,我可以只将所有主页的内容存储在一个大数据库条目中,并在页面加载时 return 全部存储。 虽然我确信请求和处理这么多数据只是为了显示主页是非常糟糕的做法......或者这样做可以吗?
任何 help/links 如果您能阐明这个问题,我们将不胜感激。
非常感谢, 麦克
我希望我有你需要的东西,但我认为有多种解决方案。
您可以在 html 中插入一些占位符(不是 ID)并使用 php 替换它们并插入您的内容。
另一种方法是在您的数据库中定义属于一个页面的部分内容。如果请求页面,则输出属于它的所有内容区域。 (这可以扩展为数据库中的格式、ID 和其他信息添加 类)。
我的第三个想法是简单地将请求的页面创建为 php 文件并插入像 load_module("p1")
这样的函数来获取内容。 load_module($module)
可以从数据库加载模块的内容。
我认为您使用 javascript 动态替换内容的想法很糟糕。如果 javascript 被禁用或 javascript 文件加载缓慢(例如在移动网络中),则用户看不到任何内容,这将导致他被驱逐(他认为存在技术错误)。