通过插件更改 Hybris 上的徽标

Change logo on Hybris through addon

我是 Hybris 的新手,我想更改 Hybris OOTB (PowerTools) 的徽标。但我想通过我新创建的插件来做到这一点。 我发现在这个 impex 文件 (cm-content_en.impex) 中我有这个

# Site Logo Component
UPDATE SimpleBannerComponent;$contentCV[unique=true];uid[unique=true];$picture[lang=$lang]
;;SiteLogoComponent;/images/default_logo.svg

现在,我想添加我的自定义徽标 svg,它位于

/companystorefrontaddon/acceleratoraddon/web/webroot/_ui/responsive/common/images/new_logo.svg

如何将路径添加到我的 impex 文件? 谢谢

  1. 首先,将您的图片 (.svg) 放在:powertoolsstore\resources\powertoolsstore\import\sampledata\contentCatalogs\powertoolsContentCatalog\images\theme\.

  2. 然后,接下来用代码 my_default_logo.svg 创建一个 Media 使用这个 impex :

## in : cms-content.impex

$contentCatalog=powertoolsContentCatalog
$contentCV=catalogVersion(CatalogVersion.catalog(Catalog.id[default=$contentCatalog]),CatalogVersion.version[default=Staged])[default=$contentCatalog:Staged]
$media=media(code, $contentCV);

$siteResource=jar:de.hybris.platform.powertoolsstore.constants.PowertoolsStoreConstants&/powertoolsstore/import/sampledata/contentCatalogs/$contentCatalog

INSERT_UPDATE Media;$contentCV[unique=true];code[unique=true];realfilename;@media[translator=de.hybris.platform.impex.jalo.media.MediaDataTranslator];mime[default='image/jpeg'];altText;folder(qualifier)[default='images']
;  ;my_default_logo.svg  ;default_logo.svg ;$siteResource/images/theme/default_logo.svg ;image/png; ;

注意:这个变量$siteResource指的是powertoolsstore\resources\powertoolsstore\import\sampledata\contentCatalogs\powertoolsContentCatalog\.

  1. 最后将新创建的 Media 附加到 SiteLogoComponent :
## in : cms-content_en.impex

$lang=en
$contentCatalog=powertoolsContentCatalog
$contentCV=catalogVersion(CatalogVersion.catalog(Catalog.id[default=$contentCatalog]),CatalogVersion.version[default=Staged])[default=$contentCatalog:Staged]
$picture=media(code, $contentCV);

INSERT_UPDATE SimpleBannerComponent;$contentCV[unique=true];uid[unique=true];$picture[lang=$lang]
;;SiteLogoComponent; my_default_logo.svg

注意 :您需要更新 cms-content_fr.impexcms-content_de.impex 以及所有其他语言。

  1. 您应该运行 同步 Powertools 内容目录(来自:Staged在线)否则看不到前面的变化