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.

¿Fue útil?

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
scroll top