• Resolved EricBobrow

    (@ericbobrow)


    I am just setting up a BadgeOS site for the first time. We are using LearnDash LMS, and triggering badge achievements based on when a user completes specific Lessons.

    However, I don’t want these achievements to accumulate; instead I want them to recognize the Level that has been achieved, so when a user earns a new level, their achievement of the previous level should disappear.

    I can see how an admin can do this manually (revoke the lower Level achievement). Is it possible to automate this, so that when a new Level is achieved, the lower one is revoked? That would allow this system to function without admin intervention.

Viewing 4 replies - 1 through 4 (of 4 total)
  • Thread Starter EricBobrow

    (@ericbobrow)

    Just to be totally clear – these Levels relate to course progress, not to WordPress user levels such as subscriber, editor, admin etc.

    Thread Starter EricBobrow

    (@ericbobrow)

    One other related question: is it possible to trigger BadgeOS from an outside action, such as by using Zapier?

    We’re using a webhook to create a new member on the WordPress site in Digital Access Pass (DAP); when they login via DAP for the first time a WordPress user account is created. I’d like to award them the “New User” badge (level) in BadgeOS without having to make an admin do it.

    Unfortunately, logging in via DAP does not seem to trigger the BadgeOS “step” for Logging in to the Site – it must bypass it. So I can’t set up the New User level/badge until they login, and don’t quite see how to award it inside BadgeOS.

    I have been able to trigger the award of “New User” after the user completes a Lesson in LearnDash – however our first lesson has multiple steps, so their Member Level in the sidebar is blank until they get through the first set of topics and complete the full lesson. I’d prefer to have it show “New User” as soon as they get going…

    Plugin Contributor Wooninjas

    (@wooninjas)

    Hi @ericbobrow,

    1. However, I don’t want these achievements to accumulate; instead I want them to recognize the Level that has been achieved, so when a user earns a new level, their achievement of the previous level should disappear.
    >>> So you want the previous badges to be revoked automatically whenever user earns a new badge? well, Badgeos does not offer such functionality. However, you can get your desired functionality using below action hook

    function your_function_name( $user_id, $achievement_id, $this_trigger, $site_id, $args ) {
      // Your stuff
    }
    add_action( 'badgeos_award_achievement', 'your_function_name', 100, 5 );

    2. One other related question: is it possible to trigger BadgeOS from an outside action, such as by using Zapier?
    >>> Badgeos does not have any zapier integration add on. We may consider creating an integration add on for zapier (based on user feedback).

    3. Unfortunately, logging in via DAP does not seem to trigger the BadgeOS “step” for Logging in to the Site – it must bypass it. So I can’t set up the New User level/badge until they login, and don’t quite see how to award it inside BadgeOS.
    >>> Badgeos does not have any DAP integration add on. However you can reward your users manually from user admin profile page.

    4. I have been able to trigger the award of “New User” after the user completes a Lesson in LearnDash – however our first lesson has multiple steps, so their Member Level in the sidebar is blank until they get through the first set of topics and complete the full lesson. I’d prefer to have it show “New User” as soon as they get going…
    >>> What plugin you are using to display member level in the sidebar? Badgeos Learndash integration add on offers rewarding badges / points to user on completion of course, lessons etc.

    Thanks

    Plugin Contributor Wooninjas

    (@wooninjas)

    Please add a review here for us.

    Thanks.

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘How can one set up Levels? (achieving next level revokes previous)’ is closed to new replies.