layout XML 改了却没有任何变化,常见原因不是“缓存太顽固”,而是文件名 handle、主题继承、模块加载顺序或元素 name/reference 不匹配。
继续阅读Magento 2 修改 layout XML 不生效,先检查 handle 和缓存
REST API 报 The signature is invalid,OAuth 1.0 怎么定位?
Magento 2 REST 集成返回 The signature is invalid 时,应逐字节核对方法、基础 URL、参数归一化、编码、时间戳和密钥,而不是反复生成 token。本文给出可复现的比对方法。
继续阅读Magento 2 后台导入一直显示 Please wait,文件到底有没有开始处理?
后台导入停在 Please wait 可能是前端请求失败、PHP 超时、CSV 校验、异步队列或锁等待。本文先判断请求有没有到服务器,再决定查日志、数据库还是消费者。
继续阅读MSI 自动选择了错误仓库,Source Selection Algorithm 怎么检查?
订单有多个可发货 Source 时,MSI 的 Source Selection Algorithm 会按配置、距离或优先级给出建议。选错仓库要区分算法输入、stock 绑定、可售量与最终人工/扩展分配。
继续阅读每次发布后客户都被登出,Magento 2 Session 为什么会失效?
每次部署后大批客户被登出,通常与 session 存储切换、Redis 前缀、Cookie 域、加密密钥或负载均衡有关。本文区分正常发布与会话破坏。
继续阅读支付 Webhook 重复推送,Magento 2 如何避免重复开票?
支付平台因超时或重试重复发送 Webhook 是正常机制,Magento 2 接口必须做到幂等。本文说明事件去重、事务锁、订单状态判断和响应时机,避免重复开票与重复发货。
继续阅读数据库升级后出现 Illegal mix of collations,Magento 2 应该改哪里?
数据库升级或迁移后出现 Illegal mix of collations,不能只在查询后追加 COLLATE。本文从连接字符集、库/表/列定义和自定义模块 schema 找出不一致来源。
继续阅读Magento 2 加入购物车报 No such entity with cartId,Quote 到底丢在哪?
加入购物车或结账接口返回 No such entity with cartId,通常不是商品不存在,而是前端保存的 mask ID、客户会话和数据库 Quote 已经不同步。本文沿 guest cart 与 customer cart 两条路径定位。
继续阅读订单状态改了又被改回去,Magento 2 是谁在更新 state 和 status?
后台手工改了订单状态,几分钟后又自动恢复,通常是支付回调、Cron、ERP 同步或状态机重新保存订单。本文区分 state 与 status,并追踪最后一次写入来源。
继续阅读商品页显示有货,结账却提示 Out of Stock:MSI Reservation 怎么查?
商品页显示有货,加入购物车也成功,提交订单时却缺货,往往是展示库存、salable quantity 和结账时重新校验的时间点不同。本文用 MSI reservation 还原数量变化。
继续阅读

