ดังนั้นฉันมีรหัสร้านค้าและฉันต้องการเพียงแค่รหัสร้านค้า เป็นการดีที่ฉันไม่ต้องการเพียงแค่โหลดร้านค้าอย่างสมบูรณ์เพราะฉันต้องการเพียง ID
ความคิดหนึ่งที่ฉันมีคือการโหลดผ่านคอลเลกชัน แต่ฉันสงสัยว่ามีวิธีอื่นผ่านตัวช่วยหรือทรัพยากร
ดังนั้นฉันมีรหัสร้านค้าและฉันต้องการเพียงแค่รหัสร้านค้า เป็นการดีที่ฉันไม่ต้องการเพียงแค่โหลดร้านค้าอย่างสมบูรณ์เพราะฉันต้องการเพียง ID
ความคิดหนึ่งที่ฉันมีคือการโหลดผ่านคอลเลกชัน แต่ฉันสงสัยว่ามีวิธีอื่นผ่านตัวช่วยหรือทรัพยากร
คำตอบ:
ยังไม่ได้ทดสอบ แต่ฉันจำได้ว่าคุณสามารถรับ ID โดยใช้วิธีการloadConfig
ในรูปแบบMage_Core_Model_Store
หลังจากนั้นคุณสามารถรับ ID ได้โดยโทรgetId()
ไปที่รุ่น
loadConfig
วิธีการใช้การกำหนดค่าโหลดเพื่อดึงข้อมูลร้านค้า
$store = Mage::getConfig()->getNode()->stores->{$code};
ซึ่งให้ค่าต่อไปนี้กับคุณ
Mage::getConfig()->getNode('stores')->{$code}
Mage::getModel('core/store')->load($storeCode, 'code')->getId()
นี่ไม่ใช่วิธีที่ง่ายที่สุดที่จะทำใช่ไหม
ฉันไม่รู้ว่านี่เป็นสิ่งที่แปลกประหลาดไปที่ 1.9.0.0 แต่ฉันไม่สามารถรับอย่างใดอย่างหนึ่งMage::getConfig()->getNode()->stores->{$code}
หรือMage::getModel('core/store')->loadConfig($code)
(ซึ่งอันที่จริงเรียก Mage::getConfig()->getNode()->stores->{$code}
) เพื่อกลับอะไร
สิ่งแรกคือปิด ... ด้วยการเปลี่ยนแปลงรูปแบบเล็กน้อยสิ่งนี้จะได้รับผลแม้ว่าจะเป็นข้อมูลที่มากกว่าที่คุณต้องการ:
$store = Mage::getConfig()->getNode('stores')->{$code}
สิ่งที่ใช้ได้ผลสำหรับฉันที่จะได้รับรหัสร้านค้าคือ:
$storeId = Mage::getConfig()->getNode('stores')->{$code}->system->store->id;
... แน่นอนว่ายังไม่มีประสิทธิภาพโหลดข้อมูลการกำหนดค่าทั้งหมดเพียงจำนวนเล็กน้อยเท่านั้น แต่เฮ้นั่นคือ Magento สำหรับคุณ
ต่อไปนี้ควรทำงาน:
<?php echo Mage::getModel('core/store')->loadConfig($code)->getId(); ?>
Mage::app()->getStore($storeCode)->getId();