سؤال

لقد اكتشفت كيفية الحصول على العنصر الأول من المجموعة:

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

ولكن لدي الآن 3 معرفات بنفس الاسم ولكن طرق عرض المتجر مختلفة.كيف يمكنني الحصول على معرفات العناصر هذه؟عندما أكتب هذا البيان أعلاه بدون "getFirstItem()" و/أو بدون "getId()" فإن Magento يلقي لي خطأ.

هل كانت مفيدة؟

المحلول

تيبو، كما تريد استخدام getFirstItem()،هو - هي only given 1 item,أنت بحاجه إلى remove this function و أضف getAllIds() تعمل على هذه المجموعة.

الكود الكامل:

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

getAllIds() يعطي كافة المعرفات في صفيف.

نصائح أخرى

يحاول getAllIds($limit = null, $offset = null)

هذه طريقة لكائن المجموعة.لذا، بمجرد حصولك على مجموعتك، ستفعل شيئًا مثل هذا:

$collection->getAllIds();

تعتبر الوسيطات $limit و$offset اختيارية لتزويدك بإمكانيات "الترحيل".على سبيل المثال

$collection->getAllIds(100,2500); // gets you 100 ids, starting from the 2500th of the collection (2500 - 2599)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top