繁体   English   中英

Magento获取当前产品

[英]Magento get current product

我想检查当前产品是否已禁用,请重定向到其类别网址。 我正在使用该方法来获取当前产品。 但是,它似乎仅对启用的产品有效。 如果在我的情况下是禁用产品,而是可配置的产品,则不会记录其状态。 它仅在日志文件中记录启用的产品状态“ 1”。

$product = Mage::registry('current_product');
$status=$product->getStatus();
Mage::log($status,null,'log.log');

在我看来,我无法记录任何禁用的产品集合。

这就是它应该如何工作的。 如果您的产品被禁用,则无法浏览,因此Magento不会在“ current_product”中注册它。

为此,您必须创建自己的模块并为事件catalog_controller_product_init_before添加一个观察者(这是在转发给“ noRoute”之前分派的最后一个事件)。 在观察者中,您必须获取url参数,并根据这些参数必须自己加载产品(请注意,URL可以是/product.html或/ catalog / product / view / id / XX,并且必须为这两种情况创建案例)。 之后,您可以检查产品是否已禁用,并将客户重定向到所需的任何地方。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM