如何通过订阅者的电子邮件过滤订阅?

时间:2019-10-11 05:12:49

标签: php wordpress laravel woocommerce woocommerce-subscriptions

我有一个Laravel应用程序,正在使用WooCommerce Subscriptions REST API。我需要找到特定用户的所有活动订阅,而我只有电子邮件(没有ID)。

按状态“活动”过滤订阅可以正常工作。但是,我无法通过用户电子邮件来使用过滤器。当我说用户时,我指的是购买订阅产品的用户。该用户是客户,我知道我可以尝试使用[Customers]端点(https://woocommerce.github.io/woocommerce-rest-api-docs/#list-all-customers),但是由于该产品是“订阅产品”,因此WordPress分配了“ Subscriber”角色,而不是“ Customer” ”角色。这样可以防止在“客户”端点中列出该用户。

在列出订阅时,我尝试使用“ filter”参数,但无法正常工作。另外,我不介意进行两个不同的调用来实现我想要的功能,但我宁愿进行一个调用来加快我的应用程序。

所以,这是我的问题:

  1. 是否可以使用filter参数通过电子邮件过滤订户?如果是,怎么办?

  2. 如何使用WooCommerce API检索订户信息?有什么选择吗?

  3. 在订阅中使用账单地址是否可靠(在我检索所有活动的账单之后)?我的意思是,用户稍后可能会更改其电子邮件,而不会更改帐单邮寄地址(对吗?),这将在我的应用程序中给出错误的结果。

  4. 您是否看到或建议其他解决我问题的方法?

感谢您的帮助和时间。

1 个答案:

答案 0 :(得分:0)

好吧,我研究了一些我提到的API,并且能够解决我的问题。这是我的操作方法,因为这可能对其他人有用...

我发现WooCommerce没有通过mpirun端点返回订户,因为ortermpi.exe选项的默认值为customers。将role选项设置为customer并结合role选项后,我只能检索所需的客户/订户。现在,有了客户/订户ID,我就能使用all端点和email选项以及将subscriptions选项设置为{{1} }。

我希望有一天对某人有用。