【问题标题】:Can’t add products to new order created in backend无法将产品添加到后端创建的新订单
【发布时间】:2013-08-20 16:57:59
【问题描述】:

无论出于何种原因,我突然无法将产品添加到我在运行 Magento 1.7.0.2 的网站后端创建的订单中。我已经尝试了所有我能想到的方法(禁用 APC、关闭 javascript 合并、关闭 mod pagespeed、不编译、禁用缓存等...)。

在 Chome 的 Java 调试器中,当我尝试创建新订单和添加产品时,确实看到了很多 DOMExceptions 被抛出。

特别是 contentscript.js 中的第 3334 行

var c = window.getSelection().getRangeAt(0).cloneContents().textContent;

在订单创建过程的其余部分中,我在prototype.js 和jquery.main.js 中得到了一些我不确定这些是有意的还是不应该抛出的。它们位于 try/catch 块中。

这真的是一个很大的痛苦,尤其是因为我不知道为什么它似乎只是随机停止工作。我还没有安装任何新的扩展程序,我已经尝试禁用我拥有的所有扩展程序。

我也看到Magento - Cannot add products to a manual order within backend of the Admin Panel 有同样的问题,但我猜想有不同的解决方案,因为我尝试用 Magento 1.7.0.2 文件中包含的那个替换prototype.js。我从来没有修改过js文件。

【问题讨论】:

  • 我决定从工作备份中恢复。
  • 事实证明,一旦我添加回新数据库,备份就会中断。解决方法见下文。

标签: php javascript magento magento-1.7 product


【解决方案1】:

如果您知道之前没有更改任何代码,则可能是您的托管服务提供商最近进行了升级或更新,从而导致了奇怪的行为。

如果 Chrome/Firefox 禁用所有插件/模块并使用隐身模式来确保新的会话/cookie,也可以考虑尝试其他浏览器。

话虽如此,我还发现只搜索contentscript.js 主要是:http://developer.chrome.com/extensions/content_scripts.html

无论如何,我将采取一些步骤来帮助确定问题:

开发者模式:

启用 Magento 的开发者模式(index.php 或 SetEnv .htaccess) 在管理员中启用所有系统、异常日志记录。 (系统->配置->开发者->日志设置)

默认主题

将您的主题/皮肤重置为基本/默认版本。

禁用所有缓存

禁用缓存、刷新缓存存储、禁用 JS/CSS 合并。

既然你提到已经尝试禁用模块,那是否包括社区代码池和启用开发者模式?

禁用本地模块:

通过etc/local.xml禁用本地代码池

禁用第 3 方社区模块:

etc/Modules/ 下创建一个名为disabled 的新目录,将所有非 Magento 标准模块 XML 定义移动到禁用目录。

这些应该让您回到 Magento 的库存版本和调试模式,以帮助确定问题发生在哪里。一定要检查 PHP 的日志是否有任何异常。

Sonassi 已经发布了一个很好的指南,类似于我上面提到的内容:https://magento.stackexchange.com/questions/428/fundamentals-for-debugging-a-magento-store/429#429

【讨论】:

  • 我已经尝试了所有这些,但它仍然无法正常工作,甚至会记录任何错误。我确实有一个多星期前的备份,它可以工作。但是,从那时起,我收到了很多订单,并且有新客户注册。我试过使用 Chrome,“添加产品”按钮消失了。我已经尝试过 FireFox,整个产品、付款方式和运输方式框都消失了。由于某种原因,我无法使用 Internet Explorer 登录。我以为它可能是一个更新的包,但我已经启动了备份并更新了所有内容,它仍然可以工作。
【解决方案2】:

我最终聘请了一位开发人员来解决问题。

仅在启用付款方式“银行转账付款”时才会发生。一个简单的解决方法是禁用它。

如果您需要使用这种付款方式,我的开发人员发现,如果您将 app/design/frontend/base/default/template/payment/form/banktransfer.phtml 复制到 app/design/adminhtml/default/default/template/payment /form/ 有效。

cp app/design/frontend/base/default/template/payment/form/banktransfer.phtml app/design/adminhtml/default/default/template/payment/form/

这适用于 magento 1.7.0.2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 1970-01-01
    • 1970-01-01
    • 2022-08-20
    相关资源
    最近更新 更多