I'm trying to get the products that are matched by a certain Catalog Price Rule (ID: 1) by using
getMatchingProductIds(). The function returns all products, with their IDs as indices of the 1st level array. The second level array will have values either 0 or 1 depending on whether that product matches the Catalog Price Rule.
For example, my code:
returns something like:
Array (  => Array (  => 1  => 1  => 1  => 1 ) )
where 1348 is a product ID.
What do the indices in the 2nd level array (0, 1, 2, 4) represent? Why are there 4 of them? Why does it skip 3? Can their values NOT be all "1" even if the product matches the Catalog Price Rule?
(I do know that since they are all equal to 1, it means the product matches the Catalog Price Rule. But I don't know why there are 4 elements in that array, and what the indices mean.)
Status - Active
Websites - 3/3 selected (main website, example1.com, example2.com)
Customer Groups - 4/4 selected (not logged in, general, wholesale, retailer)
From Date - 1/10/13
To Date - 9/12/13
Priority - 1
Conditions - if any of the conditions are true: category is 160
Apply - To Fixed Amount
Discount Amount - 10
Enable Discounts to Subproducts - No
Stop Further Rules Processing - No
Related Banners - none