php - Magento - 在产品创建观察者之前获取商店 ID

标签 php magento

我想根据 catalog_product_save_before 观察器中的当前商店 ID 将一些网站添加到产品中。

观察者工作正常,但我似乎无法获取创建产品的当前商店 ID。这是我尝试过的:

Mage::app()->getStore()->getId();

返回 0。

Magento 将管理面板视为一个名为 admin 且 id 0 的单独商店。因此,它返回 admin 的商店 ID,这不是我想要的。

所以,我在 here 中尝试了一些东西,它仍然返回 id 为 0。

更多详细信息:

我已以商店管理员身份登录 enterprise.lmm.dev(企业网站的虚拟主机)并正在创建产品。这里,网站名称和商店名称都是“企业”。

创建产品时,我从“选择商店 View ”下拉列表中选择“企业”并填写产品创建表单。

我编写了一个观察者函数“before_product_save()”,这就是我所做的:

echo Mage::app()->getStore()->getStoreId();

但是,这会返回 0。

我想知道这是否可行,以及我是否可以访问商店“企业”的商店 ID。

谢谢。

最佳答案

此时,产品对象中的 store_id 已设置为您保存当前值的商店的 ID。

因此假设 $product 是您的产品对象,您可以使用:

$product->getStoreId()

或者如果您需要商店模型:

Mage::app()->getStore($product->getStoreId());

关于php - Magento - 在产品创建观察者之前获取商店 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23885115/

相关文章:

javascript - 通过 AJAX 和 PHP 通过输入 HTML 获取和读取文件

PHP:获取optipng的输出

php - Laravel 中的字符串插值

php - Magento 自定义路由/ Controller 转到 404

mysql - 删除magento客户组,sql错误

php - 我可以在 magento 的平面产品目录表中添加其他属性吗?

magento - 如何确定产品是否有产品图片?

PHP Deployer 更改 Composer 版本

javascript - 从文本编辑器将文章存储在数据库中的最佳方法

javascript - Magento Rotator 中的 CDATA 问题