问题标签 [shopware6]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Shopware : 如何在 Order 对象中获取产品的 customFields
当使用以下代码下订单时,我目前正在尝试在产品中获取自定义字段“ emakers_custom_field_warehouse_name ”。
这是我的搜索请求:
这是我序列化 $orderObject->getLineItems->first()->getProduct() 时得到的结果: https ://gist.github.com/Youmar0504/8b53632fbc1b43c11769711519a74a17
我已经尝试过并给了我空的结果:
TBH,我不知道还能尝试什么。看起来(如果您在要点中搜索 customField 的名称)它位于产品翻译实体中。但是,如果我执行 $orderObject->getLineItems->first()->getProduct()->getProductTranslations(),我会收到一条错误消息“尝试调用类“Shopware\Core\Content\ 的名为“getProductTranslations”的未定义方法产品\产品实体“
还有什么我可以尝试的吗?
shopware - 在 Shopware 6 中的模块激活期间避免主题编译
我们正在使用如下一系列命令激活几个模块:
这似乎每次都重建主题。
反正我们做决赛bin/build-storefront.sh
,所以很多时间都在这里浪费了。
有没有办法在不构建主题的情况下激活插件?
api - 我如何通过更新嵌套值。API?
我如何通过更新嵌套值。API?我想更新我的自定义字段custom_product_fields_magento_product_id
请求路径:/api/product/f9529c4f40e94fa6ae7439f97090cc9e
请求类型:PATCH
身体:
我哪里错了?我可以轻松更新未嵌套的产品值,例如"productNumber" : "value"
javascript - 如何找出导致 Chrome 事件的原因?
我们在 Shopware 6 上使用范围过滤器插件,该插件在 Javascript 中绑定以下事件:
我们发现,如果 Chrome 94 中的用户(这在 Firefox 中不会发生)被重定向到不同的页面,然后使用浏览器的后退按钮,则会触发这些事件,而无需用户与页面进行交互。
当我们在函数中设置断点时:
事件变量如下所示:
调用堆栈为空:
现在我们如何进一步调试并找到此事件的根本原因?
如果事件是由另一个函数触发的,我们认为调用堆栈不应该为空。
我们
trusted = true
认为这意味着它是由用户触发的事件但是用户只是使用了后退按钮并没有做
input
任何事情。
那么这个事件的原因可能是什么?这是 Chrome 错误吗?
javascript - 后台产品表单中的字段,如何编辑、添加和继承?
这是这个问题的延续。我仍在学习如何使用 Shopware,我的文件中的文件结构几乎相同。
我想在管理员的产品表单中添加 3 个字段,到目前为止,我已经在产品表上创建了表和额外的列(虽然不确定我是否真的需要这个)。当我硬编码时,它将字符串保存到我的新表中,实体似乎已被读取,当我搜索存储库时,我得到了正确的扩展扩展名:
但是我真的不明白如何保存该值并将其读出,因为当我获得带有值的扩展名时,我无法将值放在输入字段中,而当我保存它时却没有,因为我得到了这个error TypeError: e.getEntityName is not a function
,我猜它来自 sw-inherit.wrapper/index.js 文件。
我想在管理员中使用产品页面的可交付性部分中的字段。基本上用浮动替换 3 个输入,因为商店将出售织物,而这以米为单位,如 0.2 米。
所以我的树枝模板看起来像这样:
{% 端块 %}
但我很困惑,我不知道我在寻找什么或如何识别我缺少的东西。我将不胜感激任何建议或意见。
如果我不清楚,对不起,因为我似乎没有真正理解这个问题,而且绝对不是 Vue 也不是 Shopware 精通,但想学习。谢谢
shopware - Shopware 6:如何获取店面中的所有自定义字段数据?
我想在产品详细信息页面上显示产品中定义的所有自定义字段。但问题是我得到的所有数据都是技术名称和价值。
我想要实现的是,我还获得了后端定义的标签和位置,正如您在这张图片中看到的那样。
我想遍历自定义字段以显示它们。而且由于无法知道您返回了哪些自定义字段,因此我无法自己定义标签。
有没有办法做到这一点?
paypal - Shopware6 无法禁用 PayPal Ratepay Banner(页面重新加载后自动重新启用)
在 Shopware 6 中,默认启用 PayPal Ratepay Banner(PayPal Pay Later Message)。从理论上讲,横幅应该可以在设置 > 插件 > PayPal 中禁用。但点击相应按钮后,保存并重新加载页面后,该按钮再次启用。
Shopware 版本:v6.4.7.0 稳定版
贝宝版本:4.1.0
语言:德语
symfony - 如何在 shopware 6 中装饰实体定义
我想在插件 shopware 6 中装饰实体定义以添加一些修改。我想将长度字符串字段从标准 255 更改为 4000。
我的装饰班
我的配置服务
但这不起作用。我已经尝试了页面 https://developer.shopware.com/docs/guides/plugins/plugins/plugin-fundamentals/adjusting-service或https://symfony.com/doc/current/service_container/service_decoration 的所有方法。 html
是否可以更改其他插件中的实体定义?
symfony - 如何优先路由
我已经通过覆盖的路由覆盖了应用程序中的控制器并且它可以工作,但还安装了另一个插件,它覆盖了与我覆盖的相同的路由(此插件无法更改),现在商店软件支持此路由,而不是我的。
这是我要显示的控制器
这是另一个插件中的控制器 - 我不想显示它(我需要这个插件,因为我需要功能,但我不需要这条路线)
我已经阅读了这篇文章https://symfony.com/blog/new-in-symfony-5-1-route-annotations-priority但它不起作用,因为这不会优先考虑名称,只有 url。
如何优先考虑我的路线名称以由商店软件支持?
php - Shopware 6 - 在 Max total uses 和 Max uses per customer 旁边添加新的促销无效条件
我尝试将 MaxBudget 功能添加到 Shopware 6 促销活动中。该字段应该像字段 Max total uses (MaxRedemptionsGlobal) 和 Max uses per customer (MaxRedemptionsPerCustomer) 一样工作。
这意味着,如果促销的预算为... 1000 欧元,则当所有订单的促销折扣加起来达到 1000 欧元时,促销无效。就像达到最大总使用量阈值一样。
我将 MaxBudget 添加为实体扩展,并在 Max 下有一个字段。每个客户在管理中的使用。
至于店面购物车,我注意到 Max 使用的条件(全球和每个客户)并检查了 PromotionCollector。在private function getEligiblePromotionsWithDiscounts
有此代码验证订单最大使用每个客户和订单最大使用全局:
我需要的是,在上述条件之后添加一个附加条件,如下所示:
所以问题是,除了这两个之外,我在哪里可以添加一个额外的条件来检查最大预算?我是否必须扩展 PromotionCollector 类并覆盖该方法?也许我可以添加一个像 PromotionMaxBudgetCollector 这样的新类。我不确定这是否是正确的方法。