Magento有两种存放购物车的方法.登录用户可以定义购物车保存,只要您想要定义它并且它存储在与用户编号相关的数据库中.未登录的用户似乎受到您的网站保留其会话变量的时间限制.这引出了两个问题.
1)我认为未登录的用户购物车与会话超时有关吗?
2)由于Magento/Varien建议在相当短的时间内杀死会话变量(通常只有4个小时),如果问题1是真的,有没有办法在不更改会话超时变量的情况下保持未登录的购物车?
我有一个程序,我们用它通过API将我们的Magento商店连接到我们的后端库存控制系统.目前它所做的是查询Magento API以获取处于Pending状态的所有订单,将它们插入后端系统,然后将其状态设置为Magento中的Processing.由于我们的库存系统存在限制,我们一次只能插入有限数量的订单.我们通过if循环运行整个过程来控制它,如下所示(仅供参考,代码已被编辑下来,仅显示此问题的关键部分):
//The maximum number of orders to download
$iMaxCount = 10 ;
try {
$proxy = new SoapClient($wsdl_url);
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "\n";
}
$sessionId = $proxy->login($login, $password);
//fetch the pending orders from the site
$field = array(array('status'=>array( 'pending') ));
$arr = $proxy->call($sessionId, 'sales_order.list', $field);
$iCnt = 0;
foreach($arr as $key => $value){
//only down up to the max count
if ($iCnt < $iMaxCount) {
[... Do the updating and insertion part of …Run Code Online (Sandbox Code Playgroud) 我们在Magento商店内使用PowerReviews作为对标准Magento评论系统的重视.我们已经为类别,产品和评论页面设置了它,并且已经有一段时间了.
最近我添加了一个模块,它将AJAX重新加载功能带到类别页面上的过滤导航.即我选择"红色"作为过滤器,类别页面刷新,无需重新加载适当的产品.当我关闭电源评论时,这很好用.
当Power Reviews打开时,AJAX开始加载,但页面变为白色,只显示PowerReviews <div>标签.当我查看PowerReviews代码时,我想我可以看到原因:
<script type="text/javascript">
POWERREVIEWS.display.snippet(document, {
pr_page_id : '49DAF4',
pr_write_review : '/review/product/list/id/1907/category/111/#review-form',
pr_read_review : txt, pr_snippet_min_reviews : 1});
</script>
Run Code Online (Sandbox Code Playgroud)
由于POWERREVIEWS.display.snippet被称为'文档'我认为正在发生的是AJAX负载正在发生,写入'文档'然后PowerReviews正在发生并且也被写入'文档'.由于这发生在最后,它劫持页面而不是像正常负载那样正确放置.
如果我将"文档"更改为类似内容document.getelementbyid('PWR')并添加<div id="PWR">,则该页面上不会显示该代码段.有没有办法可以将输出定位POWERREVIEWS.display.snippet到"文档"以外的其他内容,这样两个脚本就不会相互干扰?
我有以下SQL:
SELECT `table1`.`value`, `table2`.*
FROM `table2`
INNER JOIN `table1` ON `table2`.`product_id` = `table1`.`entity_id`
WHERE `table2`.`created_at` > '2012-04-23' and
(`table1`.`value` = 264 OR `table1`.`value` = 260)
order by order_id
Run Code Online (Sandbox Code Playgroud)
返回一个这样的结果集(这只是返回结果的一部分):
value order_id ...
260 1234
260 1235
260 1236
264 1236
260 1237
260 1238
260 1239
264 1239
264 1240
260 1241
Run Code Online (Sandbox Code Playgroud)
我想要的是一个查询,它将获取这些结果,并且只返回order_id包含值260和264的订单.基于此示例,我要查找的最终结果是
260 1236
264 1236
260 1239
264 1239
Run Code Online (Sandbox Code Playgroud)
我的想法是这可以用一个子集完成,但我不完全确定完成它的细节.
在默认的Magento 1.7安装中,是否可以在开具发票之前通过API修改订单?我知道在没有模块的管理员中没有机制可以做到这一点但是不确定新的API连接是否允许这种情况发生.
为了澄清,这里的想法是某人下订单,然后决定他们想要在订单中添加其他东西.理想情况下,我希望通过API从我们的其他库存系统推送此更改,因为我们的CSR不使用Magento界面来处理发票或货件详细信息.
在Magento内,我们使用StoredCC程序在Magento Admin之外进行信用卡验证.信息正确存储在数据库中,并且使用PCI准则可以正确保护.但是,如果我登录Magento的管理员并转到销售 - >订单并选择订单,订单页面将显示解密的信用卡号.
我知道Magento数据库还存储了信用卡的最后四位数字,所以我想要做的是将此位置的显示从完整的信用卡号更改为*-* - ** - ####或完全禁止显示数字.在Magento的旧版本中,我会通过修改/app/design/adminhtml/default/default/template/payment/info/cc.phtml来做到这一点,但它看起来像已经被移动到getPaymentHTML()的所有内容但我是不是100%肯定.
最终目标,在编程级别而不是CSS级别更改或抑制Admin中的信用卡信息.谢谢!