Questions tagged «checkout»

此标签应用于与Magento结帐流程有关的问题。


2
Magento 2-如何将自定义字段添加到结帐并发送
所有教程都只涉及添加字段,但是该文件的保存值被跳过#mindblown。我不知道为什么,这是添加任何字段或表单的最重要部分。 我尝试关注Magento文档,但是...太糟了。 出于测试目的,我尝试将其他字段添加到收货地址,只是忽略自定义范围,自定义数据集,自定义数据提供程序和其他未记录的内容,这对我来说太奇怪了。 我不知道这种形式是“静态”还是“动态”。对我来说,所有结帐表单都是在KnockoutJS模板之上动态构建的,但是...当我尝试“静态”方式时,我可以在此处添加输入(所以它是静态表单还是不是静态表单?)。 首先,我尝试调试为什么Knockout可观察对象在解析和发送数据时只会忽略我的字段。我发现我的字段的name参数为空,但是我无法解决此问题。IMO应该通过inputName参数将其传递给UI组件渲染器,与其他任何选项(例如disabled,placeholder等等)相同(其他参数工作正常,我检查了从XML生成的配置,以检出模块初始化,对我来说很不错) 其次,我尝试使用“动态”方式来创建插件LayoutProcessor并传递完全相同的数据……现在我具有names 字段,但是发送仍然根本不起作用。 深入研究JS之后,我发现准备此请求的内容保存在module-checkout/view/frontend/web/js/model/shipping-save-processor/default.js文件中,具体取决于在module-checkout/view/frontend/web/js/model/quote.js哪里定义/创建了可观察的观察项。 我终于以某种方式module-checkout/view/frontend/web/js/model/address-converter.js更新了这个可观察变量,并依赖于module-checkout/view/frontend/web/js/model/new-customer-address.js,在那里我终于找到了一些有趣的配置选项-所有地址字段的列表。 当我在此处添加字段时,脚本开始解析并发送它们,OFC得到500,b / c后端无法识别它们……(不要问,我不是后端开发人员) 所以这是我的问题: 这是处理这种类型的自定义的正确方法吗?(b / c对我来说很奇怪) 如何发送与新地址无关的字段的值?我在任何地方都没有看到类似的配置。就我而言,我想发送订单注释(文本区域)和发票请求(复选框)。两者都不应该另存为地址,有些用户可能想要保存此地址以备将来使用。 是否有关于“静态”和“动态”表格的文档或一些示例/比较?值得这样思考吗? 附加的存在性问题: 为什么如此不一致?为什么我必须在XML / PHP文件中定义大量参数,而Magento根本只能呈现输入,然后我必须自己处理所有事情?

7
价格重新编制索引导致结帐时数据库死锁
我遇到了一个问题,我认为产品价格重新索引编制过程在结帐过程中导致了死锁异常。 我在结帐过程中捕获了此异常: 订单转换异常:SQLSTATE [40001]:序列化失败:1213尝试获取锁时发现死锁;否则,错误代码为:尝试重新启动事务 不幸的是,由于捕获异常的原因,我没有完整的堆栈跟踪信息,但是通过检查INNODB状态,我能够找到死锁: SELECT `si`.*, `p`.`type_id` FROM `cataloginventory_stock_item` AS `si` INNER JOIN `catalog_product_entity` AS `p` ON p.entity_id=si.product_id WHERE (stock_id=1) AND (product_id IN(47447, 56678)) FOR UPDATE *** (1) WAITING FOR THIS LOCK TO BE GRANTED: RECORD LOCKS space id 0 page no 329624 n bits 352 index `PRIMARY` of …

8
购物车删除所有商品/购物车会话清除
当您查看购物车或去结帐时,我突然管理的一个网站(可能是2周前-根据GA统计信息,现在才报告)开始放下购物车物品。 顶部的“迷你购物车”会在下拉菜单中显示商品,直到您浏览到购物车/结帐,然后您最终在购物车上看到“购物车中没有商品”消息。 似乎是一个会话问题。登录时不会发生。 删除了“系统->网络->会话验证设置”中的所有会话验证选项,并启用了“在前端使用SID”选项。这确实解决了问题,但是由于这些设置在过去3个月中没有更改,因此我知道存在一些潜在问题。 那么这指向带有酸痛问题的问题吗?该网站以某种方式失去了它所在的商店ID,并删除了会话/购物车数据?也许是某些模块的某些观察者/事件/重写。 我无法在本地开发人员或UAT服务器上复制该问题。UAT上的数据库是从生效日期算起的2周,因此这可能指向数据库问题/设置吗? 我正在尝试的事情:我正忙于将当前的实时数据库移至UAT以获取最新信息,以查看是否可以在此处复制该问题。完成后将更新。 一旦我可以在非活动区域复制问题,就可以系统地禁用模块,看看商店ID是否有问题(从MageMonkey和sweettooth开始,因为它们是在2周前更新的) 问题是-我还能尝试什么?是否有任何指向我可以在其中闯入一些断点并逐步执行代码的指针,以查看是否可以跟踪此问题? 没有安装额外的缓存系统,例如清漆或内存缓存。服务器是标准的cpanel安装。在uat上测试我禁用了所有缓存。 进一步更新:当我使用默认主题时,似乎无法复制。我正在系统地将主题覆盖文件夹移回。 我还使用git来回溯代码,每个哈希都存在问题。 更新:自从我有时间花时间以来,已经有一段时间了。高工作量。 我将会话移至基于文件的会话,问题已消失。由于客户端不打算在不久的将来使用多台服务器,并且由于我的工作量,该留在那儿了。以后很可能会再咬我。 magento支持建议该问题与扩展会话类的甜食模块有关,但是我已禁用了该模块,并且问题仍然存在。 当我得到更多结果时将更新。
27 checkout  session  cart 

4
Magento 2-使用REST API创建订单
我需要使用Magento REST API从移动客户端创建订单。就我而言,移动端将直接使用PayPal SDK实施付款。我需要做的是通过将付款方式设置为汇票来创建订单并执行客人结帐。我应该使用哪个API来实现这一目标?


6
单页签出,或不单页签出
我注意到很多网站都将默认的OnePage Checkout替换为3rd party模块。 我熟悉的两个替代品是OneStep和CheckItOut。 从我的经验来看,我个人认为,第三方签出不值得他们带来额外的麻烦,主要是在扩展其功能方面。 为什么有些人热衷于替换OnePage?有什么问题呢?




2
Magento V1.8一页结帐未加载付款信息
拜托,有人可以帮我吗?我的一页结帐出现问题Magento CE v1.8. 我正在测试结帐流程,发现在选择一种送货方式后,系统无法继续执行下一步"Payment Information"。当我单击该continue按钮时,什么也没有发生,而是保留在运输方式选项卡上。 我是Magento的新手,并且仍然在玩它,所以由于我缺乏系统经验,如果它是愚蠢的设置或被忽略的问题,我不会感到惊讶。 但是我在某处读到它可能是JS错误或模板中的内容。 该链接为http://beachandbeyond.co.za/shop,我们将为您提供任何帮助。
18 checkout 

4
结帐时出现“请指定送货方式”异常
我一直在生产中获取此错误的异常日志,但无法在本地或暂存环境中重现该问题,因此很难进行故障排除。 产生此错误的Mage_Sales_Model_Service_Quote::_validate()原因是$rate返回的$rate = $address->getShippingRateByCode($method)为空。 我添加了一些日志记录,以尝试更好地了解正在发生的事情,并且可以看到其中$method包含正确的运输方法。 我最好的猜测是,在此过程中的某个时候,运费应在应有的时候删除。 我注意到,每次发生此异常时,都会在合法异常(例如无效的信用卡)之后立即发生。我试图通过使用无效的信用卡(然后是有效的信用卡)来重现该问题,但是对于我而言,无论是分期,制作还是本地,都无法重现。 我最初的预感是,可能在第一个有效异常之后某处丢失了运输方法,但事实并非如此,因为$method在抛出此异常时,我认为该方法具有正确的值。 我正在使用的checkout模块是AwesomeCheckout-据我所知,在创建应该在此处引起问题的订单时,它实际上没有任何自定义逻辑,但可能是相关的。 更新:我添加了一些代码以尝试重新收集丢失的费率。 protected function _validate() { if (!$this->getQuote()->isVirtual()) { $address = $this->getQuote()->getShippingAddress(); $addressValidation = $address->validate(); if ($addressValidation !== true) { Mage::throwException( Mage::helper('sales')->__('Please check shipping address information. %s', implode(' ', $addressValidation)) ); } $method= $address->getShippingMethod(); $rate = $address->getShippingRateByCode($method); /** * Start Customization */ …

4
如何从Magento一页结帐中删除步骤?
我正在使用CE 1.7,目前正在尝试从Onepage结帐中删除送货,送货方式和付款步骤。我已经从中删除了步骤local\mage\checkout\block\onepage\abstract.php。我的问题来自尝试从帐单信息发展到我单击“继续”时进行审阅时,它加载的加载下一步图片比静止图片要多。任何想法将不胜感激。

2
如何在送货地址之前重新订购(切换)帐单地址
在一页结帐页面上,我需要在送货地址之前重新订购帐单地址。实际上,逻辑应该与现在相反。如果送货地址与帐单地址不同,则应该可以对其进行编辑。现在,您可以修改帐单邮寄地址(如果它与送货地址不同)。另外,帐单邮寄地址应与送货地址显示在同一“页面”上。当前在magento结帐步骤中的步骤1。 我该怎么做?也许有一个用于此的插件,但我找不到。 我附上了一家德国商店的屏幕截图,内容如下: 我找到了用于帐单的.html模板文件,看来这是在checkout_index_index.xml中结束的地方: <item name="billing-step" xsi:type="array"> <item name="component" xsi:type="string">uiComponent</item> <item name="sortOrder" xsi:type="string">2</item> <item name="children" xsi:type="array"> <item name="payment" xsi:type="array"> <item name="component" xsi:type="string">Magento_Checkout/js/view/payment</item> <item name="config" xsi:type="array"> <item name="title" xsi:type="string" translate="true">Payment</item> </item> <item name="children" xsi:type="array"> <!-- ... --> <!-- merge your payment methods here --> <item name="afterMethods" xsi:type="array"> <item name="component" xsi:type="string">uiComponent</item> <item …

4
Magento 2在运输方式中添加下拉列表
我为一些物流公司开发运输方式。该公司有许多办事处,客户可以在此获得他的订单。我可以在API中按сity列出办公室列表,但是现在我不能更好地表示这一步了吗? 现在,我只是\Magento\Quote\Model\Quote\Address\RateResult\Method 为城镇中的每个办公室设置了新的设备,在大城市中,计数> 100,并且我认为在结帐中设置100条线不是很好。 这将是用于不同结帐设计的公共模块,因此在用户选择一种运输方式后,如何在选中的运输方式附近呈现一些下拉列表以及办公室列表,并设置价格和方法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.