乐趣区

关于sap:SAP-Commerce-Cloud-SmartEdit-学习笔记

官网文档

SmartEdit 是一个可插拔的 JavaScript 框架,附带一个 UI,使开发人员可能治理现有的网页。

SmartEdit 生态系统由独特提供 SmartEdit 产品的 modules 和 extensions 组成。

SmartEdit 是 SmartEdit 模块中一个前端驱动的可扩大应用程序。CMS REST 调用的 SAP Commerce Cloud 实现是 WCMS 模块的一部分。SmartEdit 的所有前端扩大 SmartEdit 都须要 npm-ancillary modules 用于其构建生命周期。

您必须装置 smarteditaddon AddOn 能力应用 SmartEdit 编辑 SAP Commerce Cloud Accelerator 店面。smarteditaddon 插件在任何基于 coreaccelerator 的店面中实现 SmartEdit contract.

SmartEdit 是一个用于治理店面内容的 Web 应用程序。如果店面恪守 SmartEdit 店面设计 contract,则该网站的店面能够由 SmartEdit 进行编辑。

对于应用 yacceleratorstorefront 或 yb2bacceleratorstorefront EXTENSION 创立的店面,您能够通过启用 smarteditaddon AddOn 应用 SmartEdit 编辑店面。此插件确保能够应用 SmartEdit Web 应用程序编辑基于 coreaccelerator 的店面的内容。

cx-for-spa recipe 里是蕴含了 SmartEdit:

当容许应用 SmartEdit Web 应用程序编辑店面时,各种菜单和操作将显示在店面页面内容的顶部。页面内容能够依据多种条件而变动,例如站点、内容目录、内容目录版本、语言以及日期和工夫。这些变量中的每一个都形成了用户的体验上下文。SmartEdit 应用 previewwebservices 扩大提供的 Preview API 将店面加载到指定的体验上下文中。

SmartEdit Architecture

SmartEdit 架构能够分为两个局部:前端和后端。如下:

  • 前端:前端由 smartedit 和 cmssmartedit 扩大组成。这些扩大是应用 AngularJS 框架用 JavaScript 编写的。为了治理基于 JavaScript 的扩大的构建生命周期,即清理、构建、打包、放大或丑化代码,须要一些 SAP Commerce Cloud Platform 默认不提供的库。SmartEdit 应用 npmancillary 扩大来存储和组织所需的库。
  • 后端:后端由 smarteditwebservices、cmswebservices、cmssmarteditwebservices、cmsfacades、cms2 和 cms2lib 扩大组成。这些扩大是应用 Spring 框架在 Java 中构建的。
    前端应用 RESTful API 与后端通信。与 CMS 相干的 REST API 在 smarteditwebservices、cmssmarteditwebservices 和 cmswebservices 扩大中定义。CMS API 应用的业务逻辑驻留在 cmsfacades 扩大中,该扩大应用 cms2 和 cms2lib 扩大中可用的 CMS 服务。

要应用 SmartEdit Web 应用程序,用户必须输出无效的用户名和明码能力登录。如果用户无效,则将用户凭据发送到受权服务器并返回 OAuth 令牌。SAP Commerce Cloud Platform 反对此受权性能。同样,所有 CMS API 都受到爱护,并要求在申请标头中提供适当的受权令牌。

SmartEdit 框架是一个以 UI 为核心的业务工具框架,容许用户以视觉加强的形式编辑更改。它是一个轻量级 AngularJS JavaScript 应用程序,基于 SAP Commerce Cloud 提供的 UI(例如网站)和一组定义附加性能的模块。

具体技术设计能够看这里。

登录 smartedit,抉择 site 和对应的 catalog:

点 homepage:

找到这个 homepage:

编辑:

page label 就是 url:

如何创立新的页面

SmartEdit 提供了一个直观的向导,您能够应用它为内容目录创立类别、内容、电子邮件和产品页面。您还能够向页面增加限度,以指定在何种条件下向客户显示页面。

SmartEdit 提供了一个直观的向导来帮忙您为内容目录创立页面。您能够创立类别、内容、电子邮件和产品页面。创立页面时,您能够抉择创立主页面或变体页面。

primary page 是始终向所有用户显示的默认版本。您创立的所有变体页面都基于主页面。您无奈为主页调配限度。当不存在变体页面或不存在与以后显示条件匹配的变体页面时,即显示条件不满足利用于现有的工夫、用户组、类别等限度规定时,显示主页面变体页面。

变体页面基于主页面,但增加了限度。限度指定在何种条件下显示变体页面,例如当属于特定组的用户查看页面时,或者当用户在指定日期期间抉择页面并且存在要在指定日期显示的变体页面时. 您能够为变体页面增加类别、工夫、用户组和其余限度。您能够增加到变体页面的限度类型取决于页面的类型。

创立页面时,您应该留神以下事项:

(1) 如果主页尚不存在,则您无奈创立变体页面。变体页面必须基于主页面。

(2) 您只能为 category 和 product 页面类型创立一个主页。

(3) 您能够为 content page 类型创立多个主页面。

您只须要为内容页面指定一个页面标签,并且它在内容目录版本中必须是惟一的。您在主页上指定了一个页面标签,它被所有关联的变体页面继承。

您能够基于单个主页面创立多个变体页面。

您必须向变体页面增加至多一个限度。

SAP 建议您将页面增加到目录的暂存版本,以便您当前能够将更改与目录的在线版本同步。

抉择一个 template:

类型抉择为 primary:

Content Page 1 Template 的 content slots 能够在 Backoffice 里查看:

创立结束后,状态为 draft:

点了 Sync 之后报错:

Items cannot be synched. One or more items haven’t been approved for publishing

创立完之后:

其实能够通过 impex 的形式,间接把 page 和 content slot 等定义,间接导入零碎。

page draft status:

page 同步的前提条件是状态改为 Ready to Sync:

To sync, update page status to Ready to Sync

留神下图:我用 admin 登录进去时是看不见这些的:

这波及到 smartEdit 里的权限治理。

更多 Jerry 的原创文章,尽在:” 汪子熙 ”:

退出移动版