日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作

發(fā)布時(shí)間:2023/12/19 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

將Commerce Cloud里下列文件拷貝到Angular應(yīng)用的src文件夾里:

hybris/bin/modules/smartedit/smarteditaddon/acceleratoraddon/web/webroot/_ui/shared/common/js/webApplicationInjector.js

編輯Angular項(xiàng)目的angular.json, 把SmartEdit的webApplicationInjector.js添加進(jìn)去:

"architect": { "build": {"builder": "@angular-devkit/build-angular:browser","options": {"outputPath": "dist/mystore","index": "src/index.html","main": "src/main.ts","polyfills": "src/polyfills.ts","tsConfig": "src/tsconfig.app.json","assets": ["src/favicon.ico","src/assets","src/webApplicationInjector.js"],...

編輯src/index.html文件的HEAD區(qū)域:

添加下面一行:

<script id="smartedit-injector" src="webApplicationInjector.js" data-smartedit-allow-origin="localhost:9002"></script>

Replace localhost:9002 with the domain of your server.
This line tells SmartEdit that Spartacus is allowed to be edited by SmartEdit.

上面一行代碼,語義上是告訴SmartEdit,Spartacus允許其頁面被SmartEdit編輯。

以Administrator登錄SmartEdit,點(diǎn)擊右上角的Settings超鏈接,向下滾動(dòng)whiteListedStorefronts,將Spartacus Storefront的鏈接添加進(jìn)去:

["https://localhost:4200"]

在SmartEdit里以preview方式打開Spartacus頁面時(shí),SmartEdit會(huì)發(fā)送如下包含了cmsTicketId的參數(shù)給Spartacus:

https://localhost:4200/cx-preview?cmsTicketId=6477500489900224fda62f41-167a-40fe-9ecc-39019a64ebb9

cx-preview path代表以preview模式打開Spartacus.

cmsTicketId is generated in SAP Commerce Cloud backend. It contains many information required by SmartEdit, such as site-id or catalogVersion.

包含了site-id / catalogVersion信息。

To make SmartEdit be able to load pages in Spartacus, it needs to get all the required context data, which includes site, content catalog, and content catalog version, and can also be for a specified language, or date and time. Therefore, cmsTicketId needs to be appended to any CMS requests sent from Spartacus to backend.

SmartEdit加載Spartacus的頁面,而后者元數(shù)據(jù)來自backend,因此經(jīng)由Spartacus發(fā)送到backend的請求也需要附上cmsTicketId.

Spartacus里有個(gè)CmsTicketInterceptor, 負(fù)責(zé)動(dòng)態(tài)添加cmsTicketId參數(shù)。

In Spartacus, we have CmsTicketInterceptor. If cmsTicketId exists and requests are cms specified, it adds cmsTicketId as one of the request parameters.

https://localhost:9002/rest/v2/electronics-spa/cms/pages?fields=DEFAULT&lang=en&curr=USD&cmsTicketId=6477500489900224fda62f41-167a-40fe-9ecc-39019a64ebb9

一旦SAP Commerce Cloud后臺收到包含cmsTicketId的請求,其響應(yīng)結(jié)構(gòu)里包含properties字段:

... "label" : "homepage", "properties" : {"smartedit" : {"classes" : "smartedit-page-uid-homepage smartedit-page-uuid-eyJpdGVtSWQiOiJob21lcGFnZSIsImNhdGFsb2dJZCI6ImVsZWN0cm9uaWNzLXNwYUNvbnRlbnRDYXRhbG9nIiwiY2F0YWxvZ1ZlcnNpb24iOiJTdGFnZWQifQ== smartedit-catalog-version-uuid-electronics-spaContentCatalog/Staged"}} }

In the group smartedit, there is classes. It is the required SmartEdit contract for this CMS page. So, we need add these “classes” into the class list of the html body tag. If you check the html page source, you will see the body tag has the “classes”.

如下代碼所示:

<body class="smartedit-page-uid-homepage smartedit-page-uuid-eyJpdGVtSWQiOiJob21lcGFnZSIsImNhdGFsb2dJZCI6ImVsZWN0cm9uaWNzLXNwYUNvbnRlbnRDYXRhbG9nIiwiY2F0YWxvZ1ZlcnNpb24iOiJTdGFnZWQifQ== smartedit-catalog-version-uuid-electronics-spaContentCatalog/Staged"><cx-storefront ng-version="8.0.0" class="stop-navigating"><header><cx-page-layout section="header" ng-reflect-section="header" class="header"><!--bindings={ ...

默認(rèn)的預(yù)覽Category/Product

Each site has defaultPreviewCategory, defaultPreviewProduct and defaultPreviewCatalog. For example:

UPDATE CMSSite;uid[unique=true];defaultPreviewCategory(code, $productCV);defaultPreviewProduct(code, $productCV);defaultPreviewCatalog(id) ;$spaSiteUid;575;2053367;$productCatalog

When open category or product pages in SmartEdit, you will find that not only the CMS pages are loaded, the default preview product/category is also loaded.

In SmartEdit, product with code 2053367 is opened in the product details page:

在SmartEdit預(yù)覽Spartacus頁面時(shí),這些默認(rèn)的產(chǎn)品 / Category就派上用場了:

Same for the category page, category 575 is opened in the product list page:

更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:

總結(jié)

以上是生活随笔為你收集整理的SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 视频在线 | 插少妇视频 | 吃瓜网今日吃瓜 热门大瓜 色婷在线 | 国产真实生活伦对白 | av网站在线免费 | www.色午夜.com| 日韩欧美二区 | 日本韩国欧美在线 | 人操人视频 | 99热在线播放 | 岛国大片在线 | 日产av在线播放 | 特黄av| 先锋资源av | 永久免费54看片 | 国产 日韩 一区 | 久久中文字幕在线观看 | 精品九九九九九 | 男生桶女生肌肌 | 秋霞成人午夜伦在线观看 | 亚洲综合图色 | 日本特黄特色aaa大片免费 | 韩日一区二区三区 | 岛国av在线| 制服丝袜天堂网 | 日韩av片在线 | 一区二区欧美视频 | 波多野结衣亚洲一区 | 成年人看的黄色 | 男女激情久久 | 爆操91| 国产成人av一区二区三区不卡 | 婷婷综合色 | 丁香综合激情 | 精品一区二区三区视频日产 | 日韩永久免费视频 | 国产伦精品一区二区三区四区 | 99爱精品 | 久久无码精品丰满人妻 | 亚洲2022国产成人精品无码区 | 免费欧美一级 | 日韩久久精品电影 | 九九久久综合 | 老司机激情视频 | 97伊人超碰 | 91小仙女jk白丝袜呻吟 | 制服.丝袜.亚洲.另类.中文 | 久久高清毛片 | 小镇姑娘国语版在线观看免费 | 九色91porny| 狠狠撸在线观看 | 男人天堂中文字幕 | 樱桃香蕉视频 | 琪琪五月天 | 免看一级片 | 日本乱子伦xxxx | 亚洲剧情av | 国产精品99久久久久久久久 | 午夜婷婷网 | 制中文字幕音影 | 五月天婷婷网站 | 久久久久久爱 | 播播开心激情网 | 99视频在线| 久久久久久久久久福利 | 啪啪资源 | 激情视频网站在线观看 | 欧美午夜精品一区二区蜜桃 | 老司机亚洲精品 | www.777奇米 | 久久狠| 国精品一区二区三区 | 免费高清毛片 | 亚洲国产剧情 | 啪视频在线观看 | 色婷婷九月 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 国产激情无码一区二区 | 国产精品乱码久久久久 | v天堂在线观看 | 国产午夜小视频 | 亚洲欧美日韩精品久久亚洲区 | 国产卡一卡二卡三无线乱码新区 | 色网站在线免费观看 | 黄网站在线观看 | 日韩欧美在线观看一区二区 | 奇米影视在线视频 | 99精品小视频 | youjizz亚洲| 日日干夜夜操 | 人人干人人爽 | 精品不卡视频 | 91免费网站视频 | 欧美一区高清 | 日韩欧美第一页 | www.激情| 老女人乱淫 | 欧美亚洲伦理 | 亚洲一区亚洲二区 |