我只需要向订阅有效的用户展示一些东西,我使用的是 edd 定期付款插件,我发现这是他们的文档
$subscriber->has_active_subscription()
但我不知道如何利用它只向有活跃订阅的用户展示一些东西。
所以我将在我的archive.php 文件中添加这段代码,并为活跃用户显示额外的php 代码。
我只需要向订阅有效的用户展示一些东西,我使用的是 edd 定期付款插件,我发现这是他们的文档
$subscriber->has_active_subscription()
但我不知道如何利用它只向有活跃订阅的用户展示一些东西。
所以我将在我的archive.php 文件中添加这段代码,并为活跃用户显示额外的php 代码。
您找到的代码是 Easy Digital Downloads 使用的 OOP 类的一部分。他们的文档在这里:https ://docs.easydigitaldownloads.com/article/1160-recurring-payments-developer-eddrecurringsubscriber
您需要做的是:
$my_user = get_current_user_id(); //grab current user
$subscriber = new EDD_Recurring_Subscriber( $my_user, true ); //pass user id to EDD class
//The EDD class will return its own user object, and on that you can do your check from the question:
if ($subscriber->has_active_subscription()) {
echo 'some special message for users with subscriptions';
} else {
//do something else
}
不过要小心,因为如果用户有一个有效的订阅和他/她有一个取消的订阅,该方法将返回 true(但如果订阅已过期,则返回 false)。这可能是也可能不是你想要的。
我没有 EDD,所以没有测试过,但我希望它至少能让你开始。