0

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

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

我的问题涉及询问编译发生在哪里和/或它是如何发生的。现在看起来好像我必须手动编译这些资产,这似乎毫无意义,因为这只是我必须手动采取的额外步骤,与 CSS 相比,使用 SCSS 进行渲染的用处不大。

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

4

1 回答 1

1

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

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

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

如果您想回馈 SuiteCRM 项目,则需要使用主题/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:从其他目录导入文件?

SuiteCRM 应该接手剩下的工作。SuiteCRM 7.9 中有一个更改,它弃用了 $sugarcrm_version 以支持 $suitecrm_version。这将影响主题themedef.php。

详见 https://github.com/salesagility/SuiteCRM/pull/3233/files

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

于 2017-03-16T21:04:11.523 回答