Pergunta

Descobri como obter o primeiro item de uma coleção:

$pageId = Mage::getModel('cms/page')->getCollection()
          ->addFieldToFilter('identifier', 'your name in the pages')
          ->getFirstItem()
          ->getId();

Mas agora tenho 3 IDs com o mesmo nome, mas com visualizações de loja diferentes.Como posso obter esses IDs de itens?Quando escrevo a afirmação acima sem "getFirstItem()" e/ou sem "getId()", o Magento gera um erro.

Foi útil?

Solução

Tipo, como você quiser usando getFirstItem(),isto only given 1 item,Você precisa remove this function e adicione getAllIds() função nesta coleção.

Código completo:

$pageIds = Mage::getModel('cms/page')->getCollection()
          ->addFieldToFilter('identifier', 'your name in the pages')
          //->getFirstItem()
          ->getAllIds();)

getAllIds() fornece todos os IDs em um array.

Outras dicas

Tentar getAllIds($limit = null, $offset = null)

Esse é um método para um objeto de coleção.Então, depois de obter sua coleção, você faria algo assim:

$collection->getAllIds();

Os argumentos $limit e $offset são opcionais e fornecem recursos de "paginação".Por exemplo.

$collection->getAllIds(100,2500); // gets you 100 ids, starting from the 2500th of the collection (2500 - 2599)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top