问题描述
我有一个在Shopware 6上运行的商店。数据正在从Magento 1.8迁移到该商店。在magento商店中,可以为一个产品分配多个URL。这样就可以通过productA
,shop.domain/productA
,shop.domain/categoryA/productA
访问shop.domain/categoryA/bategoryB/productA
。
在导入商品的Shopware中,只有一个链接-shop.domain/product-a
(在我拥有一些更疯狂的商品名称的情况下,shopware将名称解析为url键的方式与magento不同)。
我需要帮助使产品具有与magento中相同的链接-shop.domain/productA
,shop.domain/categoryA/productA
,shop.domain/categoryA/bategoryB/productA
。我该怎么办?
如果这不可能,那么我至少如何为产品分配自定义url-key
,使其与magento中的相同?
我发现Shopware中的产品实体与SEO_url
实体有关系,并且我一直在尝试通过API将不同的组合推送到该端点,例如:
'foreignKey' => $shopwareProducts[0]->id,'salesChannelId' => $germanySalesChannelId,'routeName' => 'frontend.navigation.page','pathInfo' => 'productA','SEOPathInfo' => 'SEOPathInfoTest'.$shopwareProducts[0]->id
似乎没有错误,但是我不知道如何在店面使用它(这意味着elink给我404)。有一个“设置”->“ SEO”页面,其中似乎已配置了URL,但我不知道该如何构建该片段以正常工作(尝试过{% for part in product.SEOUrls %}{{ part.SEOPathInfo|lower }}/{% endfor %}
的变体)。
我尝试使用的另一件事是产品的规范URL设置,并在SEO路径字段中输入一些路径,但这总是使我收到此错误:
errors [ {…} ]
0 Object { status: "404",code: "FRAMEWORK__SEO_URL_ROUTE_NOT_FOUND",title: "Not Found",… }
status "404"
code "FRAMEWORK__SEO_URL_ROUTE_NOT_FOUND"
title "Not Found"
detail "SEO url route\"\" not found."
Meta Object { parameters: {…} }
parameters Object { routeName: "" }
routeName ""
我对购物软件很陌生,这对我来说非常令人困惑:/有人可以帮忙吗? Shopware文档在这方面完全没有帮助。哦,我需要使用API,因为我要导入大约1600种产品,因此无法手动完成。我可以轻松地从magento中提取所有url键,如果我知道如何将其推入购物软件(SEO_url
?),那么我将被保存。
类别相同-是否有办法让它们使用不同的url键?
我尚未启用缓存。
解决方法
所有要做的就是刷新索引。之后,清除缓存。
设置->系统->缓存和索引
之后,将生成seo网址。您将不得不稍等