无法在自定义 Liferay 7.1 主题中访问真棒字体

Cannot access font awesome in custom Liferay 7.1 theme

我通过 Maven 为 Liferay 7.1 构建了一个自定义主题,效果很好。 我正在为 CSS-Builder、Theme-Builder、css.common、theme.styled 和 theme.unstyled 使用当前版本(Theme-Builder 引用 _styled) 我读到 alloy 不再是主题的一部分(对吗?)但仍可用作模块。

我的具体问题:我需要在主题中使用fontawesome图标,但是a.t.m。好像没有整合。

例如一段自定义CSS代码

content: "[=10=]a0\f0d7";
font-family: 'fontawesome-alloy';

我缺少哪些步骤才能在我的主题中使用 fontawesome-alloy?

更新 2019-08-22 - 到目前为止谢谢,但建议的默认步骤不起作用。有伙伴在升级到DXP/7.0的时候给我们提供了主题,迁移到7.1。我做了一些更正,但无法解决此问题。主题模板中的 Liferay 图标不显示任何内容,并且在使用 Maven 构建时导入导致文件未找到错误。我已经开工单,会请合作伙伴解决问题。当我收到更正后的版本时,我会在此处更新,我可以将其与我们的版本控制进行比较以确定底层问题。

更新 2019-08-27 - 事实证明(通过票证和响应示例)Milen 对“Integrating Third Party Themes with Clay”的提示起到了作用。此外,我必须使用 "FontAwesome" 作为字体系列和符号“\f0d7”而不是“[=40=]a0\f0d7”。现在主题看起来像以前在 DXP 7.0 中一样。 同样相关的是使用版本 3.0.1 和 3.0.4 而不是 "current versions" (4.x.x) 用于前端依赖性,这导致 "file not found" 在使用 Maven 构建时有关字体真棒导入的问题.

我假设您使用 Clay,这是 Liferay Portal 7.1 中的默认设置。 如果是这样,它确实有 own icons,因此默认情况下它不包含 font-awesome。 “Integrating Third Party Themes with Clay”文档中提供了一些如何使用超赞字体图标的提示。

您可以按照以下说明使用提供的标签库:

https://portal.liferay.dev/docs/7-1/tutorials/-/knowledge_base/t/liferay-ui-icons

在您的主题中,您可以像下面的例子那样使用它:

<@liferay_ui["icon"]
    image="../language/${language_id}"
    message=flag_message
/>

请注意,要使用 Font Awesome 图标,您需要包含 icon 属性而不是图像。就像下面的例子: (例子不是针对Freemarker而是针对JSP,taglib可以在这两个地方使用)

<liferay-ui:icon icon="angle-down" />

另请注意,它不提供最新的图标,而是来自:https://fontawesome.com/v3.2.1/icons/

如果你想要更新的版本,你必须手动包含你想要的版本。


但是,如果您对提供的内部主题感到满意,不是在 taglib 上,而是在构建主题时由 Liferay 添加的主题(它应该存在于 build/css/font-awesome 上),您可以找到您需要的一切在 scss 子目录中。此目录包含在文件 build/css/font_awesome.scss

_custom.scss

的狙击示例
@import 'liferay-font-awesome/scss/font-awesome';
@import 'liferay-font-awesome/scss/glyphicons';