我的产品页面上有两个“添加到购物车”按钮。
第一个默认功能是"Add to Cart",它的功能应该是将产品添加到购物车,然后重定向到购物车。
第二个标签是" checkout“,我想让它将产品添加到购物车中,并重定向到结帐而不是购物车。(但仅当单击了Checkout按钮时)。
我已经看过了,似乎可以使用观察者?我不确定如何实现这一点,或者区分哪个按钮被点击,或者将Checkout按钮指向哪个url。
发布于 2014-07-10 09:04:07
创建cartController.php(app/code/core/checkout/controllers/)的函数addAction到myaddAction()的副本。
添加以下内容以结束view.phtml(app/design/frontend/your package/your template/template/catalog/product/view.phtml)
<script type="text/javascript">
//<![CDATA[
productAddToCartForm.submit = function(button, url){
replaceURL = url.replace("add/","myadd/");
if(this.validator) {
var nv = Validation.methods;
delete Validation.methods['required-entry'];
delete Validation.methods['validate-one-required'];
delete Validation.methods['validate-one-required-by-name'];
// Remove custom datetime validators
for (var methodName in Validation.methods) {
if (methodName.match(/^validate-datetime-.*/i)) {
delete Validation.methods[methodName];
}
}
if (this.validator.validate()) {
if (url) {
this.form.action = replaceURL;
}
this.form.submit();
}
Object.extend(Validation.methods, nv);
}
}.bind(productAddToCartForm);
//]]>
</script>将结帐按钮添加到addtocart.phhtml (app/design/frontend/your package/your template/template/catalog/product/view)
<button type="button" title="<?php echo $buttonTitle ?>" class="button btn-cart" onclick="productAddToCartForm.submitmy(this)"><span><span><?php echo "Checkout"; ?></span></span></button>正如我告诉您的那样,将addAction复制到mycartAction Change
$this->_goBack();至
$this->_redirect('checkout/onepage');
return; 结束
if (!$cart->getQuote()->getHasError()){
$message = $this->__('%s was added to your shopping cart.', Mage::helper('core')->escapeHtml($product->getName()));
$this->_getSession()->addSuccess($message);
}添加
发布于 2014-07-10 17:38:15
我认为你可以使用jQuery来做这件事。
list.phtml中的“结帐”按钮
<button type="button" title="<?php echo $this->__('Check out') ?>" class="button btn-cart" onclick="setcheckoutLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>并将此脚本添加到相同的list.phtml文件中
<script>
function setcheckoutLocation(location)
{
jQuery.ajax({
type:"GET",
url:location,
success:function(data){
window.location.href = "http://your-checkout-page-url";
}
});
}
</script>https://stackoverflow.com/questions/24658322
复制相似问题