php - 我应该如何在 PHP CMS 中实现 CSS 样式转换器?

标签 php css content-management-system

背景

我正在用 PHP 开发我自己的 OOP 内容管理系统,为了好玩和扩展我的编程知识

我有什么

我已经设置了主框架,用户可以登录到后端,添加页面,编辑页面,设置行或列中的内容,添加 Logo ,广告牌等。

展开

我的下一个尝试是允许用户通过面板修改他们网站的风格。包括标题颜色、字体大小、字体系列等

如何实现

我想了很多方法来做到这一点,但我想请社区看看他们是否可以提出更好的解决方案或证明我的解决方案之一。

想法 1:

我可以编写/找到一个解析 css 样式表的 php 类,然后将其重写为具有编辑值的新样式表

想法 2:

我可以将现有的样式表分成结构、颜色、字体等,只允许用户分别修改颜色和字体。

想法 3:

我可以放弃整个分离样式与内容的想法,并让 php 将用户指定的样式直接写入 html...

信息

有没有人能想到其他的方法?

如果不是,我的哪一个会工作得最好/最有效/最优化等

这不是讨论,我是在问一个具体的编程问题。

我知道该面板必须有一个界面供用户更改值并将其配置保存在数据库中或将其配置直接保存在新的 css 文件中。

我只是不确定哪种方式是“最佳”方式。

“你”会怎么做?

最佳答案

我会用 JavaScript 更改样式表,例如:

<link rel="stylesheet" href="somestyle.css" id="stylesheet">

function changeStyle(cssfile) {
  document.getElementById('stylesheet').href = cssfile;
}

我还会通过 AJAX 将用户的选择输入数据库,因此当 PHP 创建下一个页面时,它知道用户选择了哪些样式。

关于php - 我应该如何在 PHP CMS 中实现 CSS 样式转换器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10294449/

相关文章:

content-management-system - 是否可以将 Nesta CMS 包含到 Rails3 应用程序中?

php - CMS架构-PHP

php - Ajax 请求和我的 Symfony 1.4 响应 : Contents doesn't match

php - $_GET 数组为空

javascript - ReactJS应用程序无法加载背景图片

html - 使用 <object> 元素在 pdf 预览中显示的元素在 Chrome 中不是交互式的

css - :after 的绝对位置

php - 你能用数据库做到这一点吗?

php - 加密密码 php 的最佳方式(2017 年)

django - "Help pages"用于我的 Django 应用程序