Magento

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

9
如何在任何magento模板中隐藏空属性?
我想在magento模板中隐藏自定义属性。我的magento版本是1.8.1 我们为产品添加了自定义属性,例如品牌,尺寸,产品类型等,但是有时我们没有在这些属性中添加值。magento在产品查看页面上显示No或N / A。 因此,我们要隐藏模板中为空或无值的属性。



2
cart getItemsCount()和getSummaryCount()之间的区别
我在标题中显示购物车中的总项目数。我能够显示项目数。 但是我对两种购物车方法感到困惑 1. Mage::helper('checkout/cart')->getItemsCount() 2. Mage::helper('checkout/cart')->getSummaryCount(); 对我来说,第一个返回购物车中的1个项目,第二个返回购物车中的6个项目,这是正确的,这两个函数有什么区别。 谢谢。

6
获取产品URL和图像的有效方法
在为Magento网上商店添加产品时,我偶然发现了几个问题。在追求创建尽可能快的代码的过程中,我发现自己无法弄清两件事。 我的(相关)代码如下: $rc = Mage::getResourceSingleton('catalog/product'); $productName = $rc->getAttributeRawValue($productId, 'name', Mage::app()->getStore()); $productPrice = $rc->getAttributeRawValue($productId, 'price', Mage::app()->getStore()); $productImage = $rc->getAttributeRawValue($productId, 'image', Mage::app()->getStore()); $productUrl = $rc->getAttributeRawValue($productId, 'url_key', Mage::app()->getStore()); 我不知道的两件事是: 1)如何检索产品网址?url_key并非总是提供正确的URL,因为并非所有的网店都使用规范的URL或URL中包含类别。 2)如何获得具有固定宽度/高度的产品图像,而不是完整图像?该->resize()功能不会在这种情况下,我的侦察功能(因为它返回一个URL)。加说,是有可能得到的Base Image,Small Image并Thumbnail分别? 我的主要目标是保持代码尽可能快。我只有一个产品ID,因为我会遍历产品的子级。我不希望使用,->load()因为这会花费更多的加载时间。

5
PayPal Express-10002安全标头无效错误
测试PayPal Express时出现错误,错误是:10002 security header is not valid。 该站点在AWS EC2上运行,前面带有nginx和Varnish。我使用Turpentine进行配置和打孔。这种架构与它有关吗? 我没有在沙盒模式下进行测试,但是实时API凭据都是正确的,我已经对其进行了多次重置。我已经查看了日志,但找不到任何重要信息。 2014-01-31T05:47:11+00:00 ERR (3): exception 'Mage_Core_Exception' with message 'PayPal NVP gateway errors: Security header is not valid (#10002: Security error). Correlation ID: 60e76cc8d89c5. Version: 72.0.' in /var/www/app/Mage.php:580 也许以下内容可能有意义?令牌为空: ==> payment_paypal_express.log <== 2014-01-31T05:22:42+00:00 DEBUG (7): Array ( [url] => https://api-3t.paypal.com/nvp [GetExpressCheckoutDetails] => …

3
Magento新的自定义块模块
我正在使用Magento 1.8.1.0版本。 我正在尝试创建一个新的自定义块模块,该模块将用于创建新的主页。 命名空间:十字军 模块:CLHomePage 街区类型:十字军东征 类:Qwerty(仅在测试时才适用) 设计包:十字军 主题:默认 这是我到目前为止所拥有的: \ app \ etc \ modules \ Crusader_All.xml <?xml version="1.0"?> <config> <modules> <Crusader_CLHomePage> <active>true</active> <codePool>local</codePool> </Crusader_CLHomePage> </modules> </config> \ app \ code \ local \ Crusader \ CLHomePage \ etc \ config.xml <?xml version="1.0"?> <config> <modules> <Crusader_CLHomePage> <version>0.0.1</version> </Crusader_CLHomePage> </modules> …

2
在升级脚本中以编程方式删除商店视图
我想以编程方式删除商店视图。看一下Mage_Adminhtml_System_StoreController::deleteStorePostAction(),这很简单(缩短了一些代码): $model = Mage::getModel('core/store')->load($id); if ($model->getId() && $model->isCanDelete()) { $model->delete(); Mage::dispatchEvent('store_delete', array('store' => $model)); } 我想将此代码放入数据升级脚本中,以便自动执行删除操作。 问题在于,在data/Magento中执行升级脚本时,只会调用在该区域中配置的事件观察器(请参阅Magento结构更新与数据更新)。在该区域中定义了某些与事件类似的观察者,因此不会被执行。商店视图删除不会像在后端执行的删除那样处理。globalenterprise_cmsenterprise_searchstore_delete_afteradminhtml 您如何处理这样的操作?您自己在升级脚本中加载其他事件区域(我担心)吗?不要在升级脚本中进行类似的数据修改,而是将魔术笔迹放置在神圣的隐藏地方并手动执行吗?

6
具有相同ID“ X”的物料(Mage_Sales_Model_Order)已存在
在Magento的管理区域中创建货件var/report后,在查看管理订单网格页面时(默认的Magento崩溃页面之后),该文件夹中显示以下错误: Item (Mage_Sales_Model_Order) with the same id "1234" already exist 通过在app/code/core/Mage/Eav/Model/Entity/Collection/Abstact.php第662行的varien对象选择器中添加DISTINCT子句,可以消除此错误。但是,由于某些原因(查询速度非常慢,编辑核心文件等),我确实不想这样做。 在保持数据完整性的同时解决此问题的最佳方法是什么。我应该删除订单吗?我将不胜感激任何建设性的投入,尤其是首先要引起冲突的原因。谢谢。 -编辑- 为了清晰起见,这是完整的堆栈跟踪记录/指出我的愚蠢之处: a:5:{i:0;s:67:"Item (Mage_Sales_Model_Order) with the same id "1234" already exist";i:1;s:4829:"#0 lib/Varien/Data/Collection/Db.php(576): Varien_Data_Collection->addItem(Object(Mage_Sales_Model_Order)) #1 app/code/core/Mage/Adminhtml/Block/Widget/Grid.php(533): Varien_Data_Collection_Db->load() #2 app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php(61): Mage_Adminhtml_Block_Widget_Grid->_prepareCollection() #3 app/code/core/Mage/Adminhtml/Block/Widget/Grid.php(626): Mage_Adminhtml_Block_Sales_Order_Grid->_prepareCollection() #4 app/code/core/Mage/Adminhtml/Block/Widget/Grid.php(632): Mage_Adminhtml_Block_Widget_Grid->_prepareGrid() #5 app/code/core/Mage/Core/Block/Abstract.php(862): Mage_Adminhtml_Block_Widget_Grid->_beforeToHtml() #6 app/code/core/Mage/Core/Block/Abstract.php(582): Mage_Core_Block_Abstract->toHtml() #7 app/code/core/Mage/Core/Block/Abstract.php(526): Mage_Core_Block_Abstract->_getChildHtml('grid', true) #8 app/code/core/Mage/Adminhtml/Block/Widget/Grid/Container.php(77): Mage_Core_Block_Abstract->getChildHtml('grid') …

1
Magento数据库升级是否通过“交​​易”进行?
我们有这个问题的atm: 客户将其商店从CE 1.4升级到CE 1.8。在我们的开发机器上,文件升级进展顺利,数据库升级也进展顺利。 当我们尝试在客户端的实时计算机上升级客户端的实时数据库(将1.8-Magento连接到数据库并在浏览器中打开它)时,该过程似乎运行了一段时间,并以500错误结束。 PHP错误日志为空;由于它是共享主机,因此我们无法更改apache或mysql设置;主机托管者尽管“专门的im magento托管”,但不愿意更改设置,并告诉我可以通过在出现500错误时重复刷新浏览器窗口来完成数据库升级,因为magento随后将以较小的步骤进行升级。这可能会持续几个小时。 我现在的问题是: -这是真的吗?我认为数据库升级的sql语句将包装在事务中,因此如果出现任何问题,它们可以回滚。 -答案是否可以暗示我可以在代码中查找该问题的答案? 谢谢你的时间!

3
客户无法登录
我刚刚迁移了我的网站。但是我有一个问题。 我的客户无法登录他们的帐户。单击登录页面上的登录时。http://www.mywebsite.com/customer/account/login/应该登录他们的帐户,但它会重定向同一页面。 我是magento的新手。请帮助我如何解决?


4
创建类别页面,显示所有特价产品
基本上,我创建了一个“待售产品”类别,我想自动在目录中包含已应用特殊价格的所有产品(通过目录>管理产品)。我希望页面保留标准Magento类别页面包含的分层导航和排序功能。 对于大多数Magento用户来说,这似乎是有价值的东西,但令我惊讶的是,它没有包含在核心功能中。 我已经尝试了十多个Stack Exchange答案,博客文章和论坛,但到目前为止没有任何效果。有人为此提供程序化解决方案吗? ===编辑=== 基于下面评论中@pspahn的评论,我决定寻求一种实现类似功能的替代方法。话虽如此,如果您有兴趣追求这一行,@ sander-mangel介绍了一种似乎完全可行的方法。

1
如何指定产品收集的自定义排序顺序?
我正在尝试基于产品ID数组创建一个产品集合,并根据ID数组对集合进行排序。 $productIds = array(318,310,311); $collection = Mage::getModel('catalog/product') ->getCollection() ->setOrder('entity_id', 'asc') // This will not do the job ->addAttributeToSelect('*') ->addAttributeToFilter('status', 1) ->addAttributeToFilter('entity_id', array( 'in' => $productIds, )); 我想对收集的数据进行排序,因为它们出现在$productIds数组中,318, 310, 311但是上面的代码将返回收集的排序,如310,311, 312。 如果不使用下面给出的简单MySQL查询,是否可以做到这一点? SELECT * FROM catalog_product_entity WHERE entity_id IN (318, 310, 311) ORDER BY FIELD(entity_id, 318, 310, 311);

3
重写控制器magento
我需要从Controller覆盖名为_initAction的操作: /app/code/core/Mage/Adminhtml/controllers/Catalog/Product/AttributeController.php 到我自己的模块和控制器中: /app/code/local/Qbikz/ToolTip/controllers/Adminhtml/Catalog/Product/AttributeController.php 我已经尝试了不同的方法来解决它:第一种方法where <from>和<to>我尝试了不同的组合(未显示404页): <rewrite> <qbikz_tooltip_adminhtml_catalog_product_attribute> <from><![CDATA[#^/adminpanel/catalog_product_attribute/edit/#]]></from> <to>/tooltip/adminhtml_catalog_product_attribute/init/</to> </qbikz_tooltip_adminhtml_catalog_product_attribute> </rewrite> + <frontend> <routers> <qbikz_tooltip> <use>admin</use> <args> <module>Qbikz_ToolTip</module> <frontName>catalog_product_attribute</frontName> </args> </qbikz_tooltip> </routers> </frontend> 第二种方法(页面显示忽略我的规则): <admin> <routers> <adminhtml> <args> <modules> <Qbikz before="Mage_Adminhtml_Catalog_Product">Qbikz_ToolTip_Adminhtml_Catalog_Product</Qbikz> </modules> </args> </adminhtml> </routers> </admin> 在我的控制器中,我放置了die(“ ok”); 但是它没有出现。也许有人可以帮忙?谢谢。

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.