Magento

Magento电子商务平台用户的问答

1
禁用产品的自动301重定向
我正在尝试在Magento 1.7中为自定义产品类型(事件)添加自动重定向。活动日期结束后,我将产品标记为已禁用,这样用户就不会进入错误的页面,并且我还想重定向到将来的课程列表,因此我没有过多的404错误现场。 有没有一种方法可以监听事件,以获取将404抛出该产品的事件,还是我应该在某个地方为此寻找免费的扩展程序?我已经搜索了一段时间,还没有看到任何运行良好的扩展。

2
哪一步的结帐类型扩展名适合原始布局句柄?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 我的扩展程序之一使用以下布局xml指令为结帐添加了三种付款方式的通用块 <checkout_onepage_paymentmethod> <reference name="root"> <block type="core/text_list" name="additional" as="additional"> <block type="foomandpspro/pxpostrebill_ccSave" name="fooman_ccsave" as="fooman_ccsave" template="fooman/dpspro/onePageCheckout.phtml"/> </block> </reference> </checkout_onepage_paymentmethod> 这对默认结帐没有问题。 问题:我的许多用户都使用了无数的一步式结帐之一,而这并不兑现这一点。布局句柄只是简单地不加载,随后该块不添加到页面。到目前为止,我已经遇到了MW_Onestepcheckout和GoMage_Checkout。 您是否遇到过任何可以正确处理此问题的自定义结帐扩展程序?还是在这种情况下,我需要接受结帐布局句柄已经退休并且需要这样做start repeating myself?

4
Varnish之后基于GeoIp的默认货币选择
我希望商店在首次访问时根据客户的IP使用GeoIP来智能地选择默认货币(没有预先选择的货币cookie)。该商店使用Nexcess出色的Turpentine扩展名在Varnish后面。 只要在给定的请求中设置了标准的Magento货币Cookie,该扩展程序便可以处理货币罚款。 我现阶段的想法是: 当然,将VCL添加到Varnish配置中以进行GeoIP查找(在C语言中),并在入站请求上设置cookie(如果尚未设置)。 添加一个按用户缓存的块,该块将执行查找并设置cookie(尽管这将不适用于第一页加载) 我是否错过了一项显而易见的技术-可能是通过客户端JS进行非清漆缓存的URL路径来确定? 有谁知道最好的方法吗?
14 currency  varnish 

5
Magento MySQL已消失错误
我在Magento CE 1.7.0.2上遇到了很多奇怪的问题。在正常操作期间,该站点有时会在前端和后端产生Magento错误页面(处理您的请求时出错)。查看关联的报告,我看到以下消息: "SQLSTATE[HY000] [2006] MySQL server has gone away" 有时(但很少)报告消息将显示为: Connection reset by peer 我查看了var> log> system.log,该MySQL has gone away错误伴随以下内容: Warning: PDO::__construct(): MySQL server has gone away in /var/www/html/domain.com/live/lib/Zend/Db/Adapter/Pdo/Abstract.php on line 129 Error while reading greeting packet. PID=1863 in /var/www/html/domain.com/live/lib/Zend/Db/Adapter/Pdo/Abstract.php on line 129 除此之外,每个请求以及这些MySQL has gone away错误似乎都发生以下错误: Warning: include(File.php): …

7
无效的表单密钥。请刷新页面。产品保存错误
您好,每当我尝试在管理面板上保存产品时,都会收到此错误“ Invalid Form Key. Please refresh the page.”。我在这里通过了此链接,但没有成功。当我查看日志文件时,它向我显示了 2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: httponly in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 94 2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: secure in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 96 2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: domain in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 98 我注释掉文件中的行作为建议这个文章在这里。日志文件中的错误消失了。但是仍然无法保存我的产品和错误“无效的表单密钥。请刷新页面。” 照原样。 我检查了萤火虫中的帖子数据,它显示了我 form_key THJDhxajLIZnzrHt form_key …


3
将新列添加到sales_flat_order_grid
如何将新列添加到sales_flat_order_grid表中,并确保在其中正确插入值? 新列的“源”是我们添加到的自定义列sales_flat_order,我们称之为foo。AFAICT,可以通过三种方式foo出现在主订单网格中: JOIN在sales_flat_order_grid收集到sales_flat_order。 问题:由于列不明确,过滤器不再起作用(因为两个表的列名相似) 使网格sales_flat_order用于数据而不是sales_flat_order_grid。 问题:列未建立索引,因此过滤速度非常慢。向未使用sales_flat_order_grid表中索引的相同数据添加索引似乎很愚蠢。 向中添加新列, sales_flat_order_grid 并确保其中的值更新 我sales_flat_order_grid不知道如何进行更新,因此我不知道如何添加此新列。有什么想法吗?


6
如何获得有关例外的电子邮件通知?
如何设置针对网站上记录或抛出的异常的电子邮件通知? 更新:一些人对以下事实发表了评论:如果您收到所有异常电子邮件,您可能会收到太多电子邮件。我倾向于让异常日志保持简洁。我认为那里发生的一切都是一个例外。如果它具有预期的功能并且没有问题,那么我想捕获该异常,如果需要,可以将其记录到另一个文件(可能是system.log),而不是将其记录到exception.log。 但是,如果您不想清理的exception.log中有很多杂音,则您可能不想这样做。
14 email  exception 


1
改善XML编译错误的错误消息
Magento在错误显示方面具有应有的保护作用。启用开发人员模式时(在开发过程中应该如此),该应用程序允许运行时错误反馈冒泡给用户。对于XML编译错误,尽管此反馈相当无用: 致命错误:消息“警告”的未捕获异常“异常”:实体:第4行:解析器错误:仅在[/] / lib / Varien / Simplexml / Config中的文档开头才允许XML声明。 daccess-ods.un.org daccess-ods.un.org在第245行的app / code / core / Mage / Core / functions.php中的510'行上的php 这是由于Varien_Simplexml_Config::loadFile()呈现::loadString()无法解析的字符串而导致的: public function loadFile($filePath) { if (!is_readable($filePath)) { //throw new Exception('Can not read xml file '.$filePath); return false; } $fileData = file_get_contents($filePath); $fileData = $this->processFileData($fileData); return $this->loadString($fileData, $this->_elementClass); …


1
在系统配置中创建自定义组和字段时出现404找不到错误
我正在尝试为“自定义”标签下的“自定义”部分创建一个组和一些字段 标签和部分正在创建。但是当我单击内容区域中的部分时,它显示404 not found错误 我的system.xml文件如下 <config> <tabs> <!--node is just an identifier--> <animala translate="label" module="training_animal"> <label>Training</label> <sort_order>1</sort_order> </animala> </tabs> <sections> <animals translate="label" module="training_animal"> <class>seperator-top</class> <label>Training</label> <!--node vlaue should match the tabs node name--> <tab>animala</tab> <frontend_type>text</frontend_type> <sort_order>100</sort_order> <show_in_default>1</show_in_default> <show_in_website>1</show_in_website> <show_in_store>1</show_in_store> <groups> <training_animal_group translate="label"> <label>My Custom Group</label> <comment>Some comment about my group</comment> …

1
使用Magento的ORM插入特定的ID字段
有没有一种方法可以使用Magento的简单ORM(Mage_Core_Model_Abstract和Mage_Core_Model_Resource_Abstract)插入具有特定主键的模型行? 例如,如果我针对空的Magento系统运行以下命令 Mage::getModel('core/website')->setData(array ( 'website_id' => 2, 'code' => 'foo', 'name' => 'Main Website', 'sort_order' => 0, 'default_group_id' => 1, 'is_default' => 1, )); 我希望表中有一个新条目core_website。但是,Magento在这里默默无闻。 深入研究资源,看来我在数据库资源类中对此感到不满 #File: app/code/core/Mage/Core/Model/Resource/Db/Abstract.php if (!is_null($object->getId()) && (!$this->_useIsObjectNew || !$object->isObjectNew())) { //update stuff here } else { //insert stuff here } 因为模型有一个ID(即我要插入一个特定的ID),并且由于_useIsObjectNew将其硬编码为false,所以我的保存请求始终被路由到该insert路径。 有没有办法用默认的Magento型号强制插入?(无重写/类替换)。 是的,可以选择使用原始SQL,但是事件功能会丢失。
14 model 

4
如何检查客户是否已订阅新闻通讯
我需要检查客户是否订阅了新闻快讯。目前,我正在使用此代码,但未返回任何内容: if (Mage::getSingleton('customer/session')->isLoggedIn()) { $status = Mage::getSingleton('customer/session')->getCustomer()->getIsSubscribed(); echo $status; die(); } 这什么也没给。任何想法如何使它工作?

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.