Magento 2 网站在加载时切换到默认颜色

Magento 2 website switching to default color on load

我的网站从 Magento 1 切换到 Magento 2,有一个主要问题,即当我打开带有属性 ID 的可配置产品的 URL 时,它跳转到默认颜色选择。

例如:我为产品 A 选择了蓝色,当我像 abc.com/mountain-bike-gloves.html#137=120&133=17 这样在浏览器中点击 URL 时。加载后,我的页面跳转到默认颜色,而不是显示所选的蓝色。

首先检查

下的configurable.js

vendor/magento/module-configurable-product/view/frontend/web/js/configurable.js

我们可以在第 59 行看到一条评论说

// 使用 URL 查询参数覆盖默认值 and/or 输入值

通过函数 _overrideDefaults。因此下一步将是找到选项字段的 id / 值并将它们添加到 url。我们可以通过检查前端的输入元素找到要设置的选项 id 和值来轻松做到这一点。在以下产品 http://demo.magevision.com/hero-hoodie.html 上检查灰色选项的 div 元素,我们将看到我们需要的信息。 aria-describedby="option-label-color-90" 和 option-id ="52",表示属性颜色的 id 为 90,选项灰色的 id 为 52。通过将这些值作为参数添加到url 我们将登陆产品页面并预选此选项。 URL 看起来像

http://demo.magevision.com/hero-hoodie.html#90=52

有关更多信息,请查看以下内容URL: https://www.magevision.com/blog/post/select-default-options-of-configurable-product-by-url-query-magento-2/