【问题标题】:How do I filter subscriptions by a subscriber's email?如何按订阅者的电子邮件过滤订阅?
【发布时间】:2020-02-08 14:08:24
【问题描述】:

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

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

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

所以,这是我的问题:

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

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

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

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

感谢您的帮助和时间。

【问题讨论】:

  • 我想知道为什么这个问题被否决了......

标签: php wordpress laravel woocommerce woocommerce-subscriptions


【解决方案1】:

嗯,我研究了我提到的 API 并解决了我的问题。这是我的做法,因为这可能对其他人有用...

我发现 WooCommerce 没有通过customers 端点返回订阅者,因为role 选项的默认值为customer。一旦我将role 选项设置为all,并结合email 选项,我就能够只检索我需要的客户/订户。现在,拥有客户/订阅者 ID,我能够使用 subscriptions 端点获取活动订阅,使用 customer 选项以及将 status 选项设置为 active。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2011-10-10
    • 1970-01-01
    • 2013-03-11
    • 2015-11-20
    • 2014-01-02
    • 1970-01-01
    相关资源
    最近更新 更多