如何处理主题定制和sass变量

时间:2017-02-27 作者:Miquel Adell

TL;DR: 你会跑吗gulp 在生产服务器上,每次管理员保存主题自定义设置时?

你好

我已经使用gulp+sass+WordPress有一段时间了,现在我正在开发一个主题,最终用户可以通过the customizer.

我习惯了有一个variables.scss 用我所有的颜色和东西。

我的第一步是播种variables.scss 通过上的操作使用自定义程序变量customize_save_after.

当然,这与中的工作原理相同,我已将在定制器上选择的所有颜色写入我的variables.scss 当我跑的时候gulp 在我的开发机器上,它得到了正确的值,一切都很好。。。

除了我没有想到生产机器。

我不打算在我的生产机器上安装gulp,因此,根据我目前的工作流程,我看不到继续使用sass变量进行颜色和字体的方法。

我知道我可以解决这个问题,把所有的afectd风格从sass变成常规的.css 在常规编译main.css 但这似乎是一个重大倒退。

我确实使用了很多sass函数(变暗、变亮、透明……)来处理基色,所以它不仅仅是将所有内容移动到未编译的样式表。

如果这是一个一般的编程问题,我会在software enginerring stack exchange, 不是在常规的堆栈溢出上,但我想即使它不是代码问题,以WordPress为中心,它在这里也比在软件工程上更适合。

谢谢

2 个回复
最合适的回答,由SO网友:Fayaz 整理而成

是的,我会的。gulp 重量非常轻,我认为在生产服务器上运行它并监视我的scss 后台文件。

但是,如果出于某种原因,生产服务器超出了您的控制范围,或者您不想安装额外的软件,那么您当然可以使用PHP scss compiler 并将其附加到主题的functions.php 要重新编译的文件scss 文件收件人css 用于自定义程序更改。

您可以使用customize_save_after 钩住以监视自定义程序的更改,然后执行scss 编译器。这样,每次有人更改定制程序时,您都可以重新编译scss 文件以反映css文件中的更改。

SO网友:Doug Belchamber

由于缺乏要点,我无法发表评论,但担心这不是一个“完整”的解决方案。

您可以在此处研究此SCSSPHP库:http://leafo.net/scssphp/

它可以为您编译SCS,无需吞咽。

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register