![](/img/trans.png)
[英]Magento - Set product visibility on observer at store level before product save
[英]Magento - Get store id before product create observer
我想基於catalog_product_save_before
觀察器中的當前商店ID向產品添加一些網站。
觀察者工作正常,但我似乎無法獲取用於創建產品的當前商店ID。 這是我嘗試的:
Mage::app()->getStore()->getId();
返回0。
Magento將管理面板視為名稱為admin
且ID為0的單獨商店。因此,它返回admin的商店ID,這不是我想要的。
因此,我在這里嘗試了一些操作,它仍然返回id為0。
更多細節:
我已以商店管理員身份登錄到enterprise.lmm.dev(企業網站的虛擬主機),並正在創建產品。 在這里,網站名稱和商店名稱均為“企業”。
創建產品時,我從“選擇商店視圖”下拉列表中選擇“企業”,並填寫產品創建表單。
我已經編寫了一個觀察者函數“ before_product_save()”,這就是我要做的:
echo Mage::app()->getStore()->getStoreId();
但是,這將返回0。
我想知道這是否可行,是否可以訪問商店“企業”的商店ID。
謝謝。
此時,產品對象中的store_id
已設置為您要為其存儲當前值的商店的ID。
因此,假設$product
是您的產品對象,則可以使用以下代碼:
$product->getStoreId()
或者,如果您需要商店模型:
Mage::app()->getStore($product->getStoreId());
嘗試:
Mage::app()->getStore()->getStoreId();
如果Mage::app()->getStore()->getStoreId()
不起作用,請嘗試$this->helper('core')->getStoreId()
或Mage::helper('core')->getStoreId()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.