SAP Commerce Cloud 里的 Site API 调用方式讲解

简介: Multiple Country Site Support 为管理包含多个内容目录并使用内容继承的站点提供原生支持。

Multiple Country Site Support 为管理包含多个内容目录并使用内容继承的站点提供原生支持。它可以重用从顶级父目录到较低级别的国家、地区和本地内容目录的组件和页面,以及无缝站点导航。


在多国家、多渠道或多品牌的背景下,多个网站需要跨不同的网站显示相同的页面和/或组件,但它们也可能希望显示特定于每个地区、渠道或品牌的内容。SmartEdit 支持通过使用共享的全局内容目录和多个区域性内容目录(根据需要覆盖特定的页面和/或组件),提供了实现真正内容继承的可能性。


Site API 用于显示有关 CMS站点的详细信息。


使用 Site API,开发人员可以为用户可访问的所有站点提取以下属性:

  • contentCatalogs: 与站点关联的内容目录(content catalog)名称的有序列表。列表按层次结构排序。在 multiple country部署的情况下,首先显示父内容目录,然后是其子内容目录,然后是子内容目录的子内容目录,依此类推。
  • name(本地化):基于接受或请求报头本地化的站点名称。
  • previewUrl:预览网站的URL地址。
  • uid:站点的唯一标识符。

该API只返回包含至少一个用户有权查看或编辑的目录版本的站点。

站点 API 公开 SiteFacade,以检索用户可访问的所有站点的站点信息。

public interface SiteFacade
{
   List<SiteData> getAllSiteData();
   List<SiteData> getSitesForCatalogs(final List<String> catalogIds);
}

DefaultSiteFacade.getAllSiteData 使用目录版本服务(Catalog Version Service)来提取可写和可读的内容目录版本,以便它只提供用户有阅读或编辑权限的站点。


DefaultSiteFacade.getSitesForCatalogs返回为指定的目录ID列表配置的所有站点,其中目录ID表示站点层次结构中的最低级别内容目录。


Site API 依赖于以下 DTO,定义在 cmsfacade-beans.xml 文件内:

<bean class="de.hybris.platform.cmsfacades.data.SiteData">
   <property name="uid" type="String" />
   <property name="previewUrl" type="String" />
   <property name="name" type="java.util.Map<String, String>" />
   <property name="thumbnailUrl" type="String" deprecated="Deprecated since 6.4, please use de.hybris.platform.cmsfacades.data.CatalogVersionData instead."/>
   <property name="contentCatalogs" type="java.util.List<String>" />
</bean>

总结

本文首先介绍了 SAP Commerce Cloud Multiple Country Site support 的概念,接着介绍了如何使用 Java API 的方式获取这些 Site 的明细数据。

目录
相关文章
|
JSON 移动开发 Java
氚云丨开发课— 09平台 API 的调用及自定义 API 的编写与调用| 学习笔记
快速学习氚云丨开发课— 09平台 API 的调用及自定义 API 的编写与调用。
908 0
|
API 开发工具 数据安全/隐私保护
如何调用 API | 学习笔记
简介:快速学习如何调用 API
981 0
如何调用 API | 学习笔记
|
前端开发 Java 程序员
如何在SpringBoot中优雅地重试调用第三方API?
如何在SpringBoot中优雅地重试调用第三方API?
254 0
|
Java API
Java调用飞信API
Java调用飞信API
63 0
|
Java 定位技术 API
java调用百度地图API根据地理位置获取经纬度
由于我们是使用百度提供的地理API接口,所以事先我们需要创建百度账号,并创建百度应用(因为我们要用应用到的ak)~~~~ 偷偷的告诉你们…这是免费的哦不要钱的…
java调用百度地图API根据地理位置获取经纬度
|
安全 Linux API
GrayLog使用HTTP JSONPath方式调用微步在线云API识别威胁IP
GrayLog使用HTTP JSONPath方式调用微步在线云API识别威胁IP
317 0
GrayLog使用HTTP JSONPath方式调用微步在线云API识别威胁IP
|
定位技术 API Python
|
数据采集 搜索推荐 API
我做的python 中文api调用模块
可以自动调用api接口
234 1
|
Java API 调度
Java多线程基础(线程与进程的区别,线程的创建方式及常用api,线程的状态)
每一个线程都是一个执行流,都按照自己的顺序执行自己的代码,多个线程之间“同时”(并发并行)的执行多份代码。Java中的线程是以轻量级进程来实现的。
Java多线程基础(线程与进程的区别,线程的创建方式及常用api,线程的状态)
|
存储 缓存 Java
Android 百度语音合成 (含离线、在线、API合成方式,详细步骤+源码)
Android 百度语音合成 (含离线、在线、API合成方式,详细步骤+源码)
502 0
Android 百度语音合成 (含离线、在线、API合成方式,详细步骤+源码)