SuiteCRM如何/在哪里编译主题中的scss文件?

时间:2017-03-16 18:41:02

标签: php sass sugarcrm suitecrm suite

我目前正在为我需要做的特定任务设置自定义管理页面,并且需要在主题中使用一些自定义样式。我转到themes/SuiteP/css文件夹,找到admin.scss。在进行更改后,我假设Suite会动态编译资产,因为我是开发人员模式;然而,这没有发生。

我决定搜索我能找到的任何可以处理将这些文件编译到*.css的地方的代码,但找不到这样的地方。

我的问题涉及询问汇编发生的位置和/或发生的方式。现在看起来似乎我必须手动编译这些资产,这似乎毫无意义,因为它只是我必须手动采取的额外步骤,使用SCSS渲染与CSS相比没那么有用。

现在,我的解决方案可能不得不添加一个与存在任何管道无关的CSS文件,但如果我可以利用现有功能,那就太棒了。

2 个答案:

答案 0 :(得分:1)

由于SugarCRM框架的遗留问题,SuiteCRM为当前主题加载了style.css。 SuiteCRM的sass工作正处于过渡期。它目前是一个手动过程,但我们希望将来能够实现自动化。

我们使用Sass作为一种允许开发人员自定义SuiteP主题的方法。我有一个github项目,它提供了一个UI来为你生成variables.scss。我希望它将在未来的版本中被接受。

因此,关于您的工作流程,您只需要关心style.css。

如果您想回馈SuiteCRM项目,那么您需要使用themes / SuiteP / css /中的sass文件。

但是,如果这仅适用于您的SuiteCRM实例,那么您需要在custom / themes / SuiteP / css / style.css中创建style.css。你如何改变取决于你自己。

我建议您使用Sass生成style.css。

您可以通过复制style.scss文件custom / themes / SuiteP / css然后将以下内容添加到文件中来实现此目的

@import ../../../../themes/SuiteP/css/style.scss

注意:我的路径可能略有错误

或使用命令行工具包含themes / SuiteP / css /目录

详情请见: SASS: Import a file from a different directory?

SuiteCRM应该接受剩下的工作。 SuiteCRM 7.9有一个变化,它将$ sugarcrm_version弃用,而不是$ suitecrm_version。这将影响主题themedef.php。

查看详情 https://github.com/salesagility/SuiteCRM/pull/3233/files

我希望这能回答你的问题。

答案 1 :(得分:0)

您最常安装article编译器。

SASS是一种脚本语言,可以解释为层叠样式表。

安装Sass是后续步骤如果您使用Linux:

1 sudo su -c "gem install sass"gem install sass;
2按终端sass --watch css/scss:css/编译脚本(源scss / path到输出css的路径)