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

时间:2019-08-16 12:42:37

标签: liferay liferay-theme liferay-7.1

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

我的具体问题:我需要在主题中使用字体惊人的图标,但要注意它似乎没有集成。

例如,一个自定义CSS代码

content: "\00a0\f0d7";
font-family: 'fontawesome-alloy';

我缺少哪个步骤在主题中包含fontawesome-合金?

  • 需要Maven依赖吗?
  • @包括在scss中吗?
  • CSS-Builder和/或Theme-Builder的POM参数?

更新2019-08-22 -到目前为止,谢谢,但是建议的默认步骤不起作用。升级到DXP / 7.0并将其迁移到7.1时,一个合作伙伴为我们提供了主题。我已进行了一些更正,但无法解决此问题。使用maven进行构建时,主题模板中的Liferay图标什么也不显示,并且在未找到文件的错误中导入结果。我已经开了票,将要求合作伙伴解决问题。当我收到一个可以与我们的版本控制进行比较以识别底层问题的正确版本时,我将在此处进行更新。

更新2019-08-27 -事实证明(通过票证和示例),Milen的“ Integrating Third Party Themes with Clay”提示可以解决问题。另外,我不得不使用“ FontAwesome”作为字体系列和符号“ \ f0d7”,而不是“ \ 00a0 \ f0d7”。现在,主题看起来像以前在DXP 7.0中一样。 与此相关的还有用于前端依赖性的版本3.0.1和3.0.4的替代,而不是“当前版本”(4.xx)的使用,这导致在使用maven进行构建时会出现有关字体真棒导入的“找不到文件”问题。

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

您可以按照提供的说明使用提供的taglib:

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

在主题中,您可以像以下示例一样使用它:

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

请注意,要使用“真棒字体”图标,您需要包括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';