【问题标题】:How can I detect if user has subscribed Memberpress product already如何检测用户是否已经订阅了 Memberpress 产品
【发布时间】:2015-06-26 23:43:55
【问题描述】:

我如何检测用户是否已经购买了会员新闻产品。

我正在搜索这样的内容:

if(have_subscription){ 
   //code to add button
}else{
   // code to add something else
}

【问题讨论】:

    标签: php wordpress membership


    【解决方案1】:

    打开您的 WordPress 网站并:

    • 选择Plugins > Add New
    • 点击Upload Plugin > Choose file
    • 从您保存的文件中选择MemberPress 插件
    • 点击Install Plugin > Activate

    您现在会发现 MemberPress 已添加到您的 WordPress 仪表板中。
    这应该会有所帮助。

    【讨论】:

    • 这不是答案。该问题与“如何在 Wordpress 中安装 Memberpress 插件”完全无关
    【解决方案2】:

    2015 年的答案对我不起作用,但却是热门搜索结果。我想我以后应该在这里与其他人分享我的搜索结果。

    另外,我认为“product_authorized”功能仅检查是否进行了购买,而不是验证到期日期。

    MemberPress 是如何确定活动、非活动或无活动的:

    $mepr_user = new MeprUser( $user_id );
    
    if( $mepr_user->is_active() ) {
        // Active
    }else if($mepr_user->has_expired()) {
        // Expired
    }else {
        // Never a member
    }
    

    has_expired() 可以返回 true,即使用户在单独的事务中处于活动状态,所以不要单独依赖它。

    如果您需要检查特定成员身份,您可以使用以下方法:

    $user_id = 123;
    $membership_id = 5000;
    
    $mepr_user = new MeprUser( $user_id );
    
    $mepr_user->is_already_subscribed_to( $membership_id ); // true or false
    
    // OR
    
    $mepr_user->is_active_on_membership( $membership_id ); // true or false
    

    is_already_subscribed_to() 仅接受产品 ID

    is_active_on_membership() 接受以下任何一项:产品 ID、MeprProduct、MeprTransaction 或 MeprSubscription

    您还可以通过以下方式获取用户的所有有效订阅:

    $mepr_user->active_product_subscriptions( 'ids' ); // return array of ids
    

    【讨论】:

      【解决方案3】:

      使用 MemberPress 的内置功能应该很简单:

      if(current_user_can('memberpress_authorized')) {
        // Do authorized only stuff here
      }
      else {
        // Do unauthorized stuff here
      }
      

      MemberPress 还为每个 MemberPress 会员添加了功能,因此您也可以执行以下操作:

      if(current_user_can('memberpress_product_authorized_123')) {
        // Do authorized only stuff here
      }
      else {
        // Do unauthorized stuff here
      }
      

      在第二个示例中,数字 123 是 MemberPress 成员的 ID。

      【讨论】:

      • 是否有一个列表 womewhere 可以使用哪些功能?
      • 有什么方法可以检查活动计划吗?还是返回“123”?
      猜你喜欢
      • 2017-06-18
      • 2016-12-29
      • 2016-12-16
      • 1970-01-01
      • 1970-01-01
      • 2017-04-29
      • 1970-01-01
      • 2021-10-06
      • 1970-01-01
      相关资源
      最近更新 更多