我正在尝试通过前端文本框更改Magento 1.8中的产品价格。 例如,客户只能使用价格附近的文本框将价格从100欧元更改为105欧元。
到目前为止我做了什么:
在app / design / frontend / base / default / template / catalog / produkt / view.phtml中创建textfild -it works
<form action='http://site.de/Aufschlag/AufschlagTill/save' method='post'>
<input type='hidden' name='product_id' value='add product id here' />
<input type='text' name='price' />
<input type='submit' value='submit' />
</form>
创建一个名为“Aufschlag”的模块 app / code / local / Aufschlag / AufschlagTill / Controllers - 包含savepriceController.php
<?php
class Aufschlag_AufschlagTill_savepriceController extends Mage_Core_Controller_Front_Action
{ public function saveAction(){
$websites = Mage::app()->getWebsites();
$product_id = $this->getRequest()->getParam('product_id');
// need to validate price here
$price = $this->getRequest()->getParam('price');
$product = Mage::getModel('catalog/product')->load($product_id)
if($product->getId()){
$product->setPrice($price)->save();
}
}
?>
app / code / local / Aufschlag / AufschlagTil / etc - 包含config.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<aufschlag_aufschlagtill>
<version>0.0.1</version>
</aufschlag_aufschlagtill>
</modules>
<frontend>
<routers>
<aufschlag_aufschlagtill>
<use>standard</use>
<args>
<module>Aufschlag_AufschlagTill</module>
<frontName>AufschlagTill</frontName>
</args>
</aufschlag_aufschlagtill>
</routers>
</frontend>
应用程序的/ etc /模块/ Aufschlag_AufschlagTill.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Aufschlag_AufschlagTill>
<active>true</active>
<codePool>local</codePool>
</Aufschlag_AufschlagTill>
</modules>
</config>
这是解决问题的正确方法吗?还是有更好的解决方案来获得一个以frondend编辑价格的fild???