Obtener storeviews por ID de grupo en Magento?
-
16-10-2019 - |
Pregunta
Como llegar ID storeview (ver) por group_id
(tienda) en Magento? Básicamente quiero storeviews lista por su store_id
.
Mage::app()->getStores()
obtendrá todos storeviews, pero quiero filtrar por grupo de tiendas específica como
Mage::app()->getStores()->byGroupId($store_group_id);
por lo que puedo enumerar todas las storeviews bajo una tienda específica.
Solución
$groupId = 1;
$collection = Mage::getModel('core/store')->getCollection()->addFieldToFilter('group_id', $groupId);
foreach ($collection as $store) {
//do something with $store
}
Otros consejos
Puede usar algo como esto
$stores = Mage::getModel('core/store')->getCollection()->addFieldToFilter('group_id',$store_group_id);
foreach($stores as $store)
{
print_r($store->getData());
}
$stores = Mage::getResourceModel('core/store_collection')
# $yourStoreGroupIds can be string or array of group ids
->addGroupFilter($yourStoreGroupIds);
foreach ($stores as $store) {
...
}
Técnicamente lo mismo que la respuesta Marius porque usos addGroupFilter
public function addGroupFilter($groupId)
{
return $this->addFieldToFilter('main_table.group_id', array('in' => $groupId));
}
Para acaba de obtener el ID de storeview
$storeIds = $stores->getColumnValues('store_id');
Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange