如果保留默认设置,Magento 1.7 会在什么情况下考虑放弃购物车?做出此决定的代码位于哪里?
我知道这可能是在引文中的某个地方设置的,但我一生都找不到它。
我已经做了一些谷歌搜索,但就像许多 Magento 问题一样,我两手空空。谢谢!
您可能知道该设置位于此处:
管理员 => 系统 => 配置 => 销售 => 结帐 => 购物车 => 报价生命周期(天)
这会将设置添加到数据库(core_config_data 表),路径为:
结帐/购物车/删除_quote_after
此路径在以下代码中使用:
app/code/core/Mage/Sales/Model/Observer.php第54行
因此,当有人将商品添加到购物车时,它就会更新。当客户登录并且他的购物车在那里时,它就会更新。当购物车在过去 30 天内未更新时。它将被删除。
额外信息:
如果您想知道何时使用此代码,它是由 magento 的 cronjob 使用的。
检查: 应用程序/代码/核心/法师/销售/etc/config.xml第1732行
<crontab>
<jobs>
<sales_clean_quotes>
<schedule>
<cron_expr>0 0 * * *</cron_expr>
</schedule>
<run>
<model>sales/observer::cleanExpiredQuotes</model>
</run>
</sales_clean_quotes>
希望这有帮助。
问题是关于购物车何时被放弃,而不是报价何时过期。 由于 Magento 没有废弃购物车功能,因此它是任意的。 添加它的各种扩展让您可以设置它。
在我们的电子商务中,我们重写了
app/code/core/Mage/Sales/Model/Observer.php中的方法
cleanExpiredQuotes
我们的业务规则如下所示:
$quotes = Mage::getModel('sales/quote')->getCollection();
$quotes->addFieldToFilter('created_at', array('to' => date("Y-m-d", time() - $lifetime)));
$quotes->addFieldToFilter('is_active', 1);
foreach ($this->getExpireQuotesAdditionalFilterFields() as $field => $condition) {
$quotes->addFieldToFilter($field, $condition);
}
$quotes->walk('delete');
当客户将商品添加到购物车但在设定的时间后没有完成购买而离开网站时,Magento 会认为购物车已放弃。此时间限制通常可以在 Magento 管理面板中配置,您可以在其中指定购物车被视为放弃的持续时间。
在 Magento 2 中,您可以在商店 > 配置 > 销售 > 废弃购物车下调整此设置。从那里,设置“废弃购物车电子邮件”功能,以按照定义的时间间隔启用自动跟进。配置此功能可以帮助企业与客户重新建立联系,鼓励他们完成购买并提高转化率。