4

我正在尝试从我的 magento 商店中检索所有客户,但只有那些在其帐户中激活了时事通讯订阅的客户。

问题:我不知道如何过滤这个属性(“newsletter”,有吗?)。

我有:

$proxy = new SoapClient('http://magentohost/api/v2_soap/?wsdl');
$sessionId = $proxy->login('apiUser', 'apiKey');
$params = array(
    'sessionId' => $session_id,
    'filters' => null
);
$allCustomers = $proxy->customerCustomerList($params);

这将返回所有客户。任何想法如何通过时事通讯订阅过滤这个?

4

1 回答 1

4

通讯订阅存储是一个单独的模块。Mage_Newsletter. 该模块似乎没有任何 API 覆盖,但是如果您快速浏览newsletter_subscriber数据库表,您会看到同时也是客户的订阅者拥有与他们相关的外键。

我可能会考虑添加一个属性来Mage_Customer保存订阅状态,向订阅和取消订阅事件添加一个观察者来更新它。

然后,我希望将此属性添加到Mage_CustomerAPI 中,以便在吸引客户时可以通过它进行过滤。

订阅事件的观察者:https ://stackoverflow.com/a/12991195/2205881和向 Magento 的订阅模块添加自定义字段

扩展 v2 API:http: //inhoo.net/ecommerce/magento/magento-api-v2/

于 2013-03-25T23:19:17.923 回答