Magento:使用自定义价格将产品添加到购物车
首先,我正在开发自定义价格的扩展,我在产品页面上有一个输入,这是一个描述我所做工作的图像: 当客户输入他想要的价格并单击“添加到购物车”时,必须使用他添加的价格添加产品 我知道可以在控制器中编码,但我不知道如何编码 这是控制器空类:Magento:使用自定义价格将产品添加到购物车,magento,Magento,首先,我正在开发自定义价格的扩展,我在产品页面上有一个输入,这是一个描述我所做工作的图像: 当客户输入他想要的价格并单击“添加到购物车”时,必须使用他添加的价格添加产品 我知道可以在控制器中编码,但我不知道如何编码 这是控制器空类: <?php class WebDirect_CustomPrice_savePriceController extends Mage_Core_Controller_Front_Action{ //put your code here } 任何人都
<?php
class WebDirect_CustomPrice_savePriceController extends Mage_Core_Controller_Front_Action{
//put your code here
}
任何人都知道“添加到购物车”按钮是如何工作的,您可以从以下位置开始:
class Mage_Checkout_CartController extends Mage_Core_Controller_Front_Action
{
/**
* Add product to shopping cart action
*
* @return Mage_Core_Controller_Varien_Action
* @throws Exception
*/
public function addAction()
{
确保覆盖“添加到购物车”路线,以指向覆盖上述核心路线的新路线
此外,从用户的输入中获取价格也会影响结账过程,特别是报价以及由此产生的所有内容—购物车、订单等等
另外,对于onepage签出,要小心,因为be逻辑和opcheckout.js紧密结合在一起
Chears你需要打电话给最终价格观察员。需要遵循以下步骤: 1在etc/config.xml中添加观察者
<events>
<catalog_product_get_final_price>
<observers>
<xyz_catalog_price_observer>
<type>singleton</type>
<class>Xyz_Catalog_Model_Price_Observer</class>
<method>apply_customprice</method>
</xyz_catalog_price_observer>
</observers>
</catalog_product_get_final_price>
</events>
点击下面类似的地方,你们可以找到如何设置自定义价格时,产品添加到购物车
当客户单击add to basket时,请发布代码的其余部分。正在调用控制器中的哪个方法,您也可以访问哪些值?i、 海关价格。你可以做你想做的事情,但是首先要让基本的东西发挥作用,也就是说,一个产品实际上是先以正常价格加入购物车的。一旦你有了这一点的工作,看看这篇文章,我之前已经解释过如何做到这一点:而且,我会尝试用一个观察者来做这件事,而不是一个全新的自定义控制器,并改变很多magento默认行为。想一想未来的升级:-@AshleySwatton如果是这样的话,如何使用observer?扩展没有修改核心,这就是我想要的?顺便问一下,Xyz是什么名称空间或模块名称?价格改变了,但我不想画常规价格。我先尝试了这个,但没有成功。你在magento中有知识事件观察者,所以你可以很容易地理解它。如果你仍然发邮件给我,我很乐意解决。不,我知道观察员是如何工作的,但你可以看到第二个问题
public function apply_customprice($observer)
{
$event = $observer->getEvent();
$product = $event->getProduct();
// ADDD LOGIC HERE to get price added by customer
$product->setFinalPrice($specialPrice); // set the product final price
return $this;
}