0

この問題を解決するために多くの時間を費やしていますが、理解できません:(特別なカテゴリから注文されたすべてのアイテムを選択する必要があります。たとえば、カテゴリID '44'などでコレクションをフィルタリングするにはどうすればよいですか?

ここに私のコード:

<?php
require_once '/home/web/public_html/app/Mage.php';
Mage::app();

//$_category = Mage::getModel('catalog/category')->load($category_id);

$salesCollection = Mage::getModel("sales/order")->getCollection();

echo $salesCollection->getSelect();

foreach ($salesCollection as $order) {
    $items = $order->getAllItems();
... ?>

私を助けてくれてありがとう、最高、リック

4

2 に答える 2

2

sales_flat_order_item データベース テーブルはカテゴリについて何も知りません。

したがって、次を使用する必要があると思います: $collection->getSelect()->join(.....);

sales_flat_order_item (Mage::getModel('sales/order')) で、product_id を見つけることができます。catalog_category_product (Mage::getModel('catalog/category_product')) では、category_id、product_id、position を見つけることができます

今、あなたは彼らに参加しなければなりません...

http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/using_collections_in_magento

于 2013-08-01T08:25:38.967 に答える