Shortcode to reveal additional badges
-
Is there a way to wrap a badge in a shortcode so that additional badges will be revealed once a badge has been completed. Similar to a prerequisite in Learndash LMS?
-
For example…an overall achievement that has 5 steps. Steps 2-5 aren’t even visually shown until step 1 is finished? Once step 1 is finished, the others finally show to the user?
Kind of… we are using some of the badges to show that users have completed a phase of our program (courses) and once they have completed the badge, they can have access to the other badges and courses.
Currently, the badge is the gateway to the course. Rather than potentially overwhelming some customers, I thought this may be a way to walk them through a process on a single page versus creating multiple pages with the badges revealed.
Example below with fictitious code:
[badgeos_achievement id=1]
[badgeos_reveal id=1 completion=true]
[badgeos_achievement id=2]
[badgeos_achievement id=3]
[badgeos_achievement id=4]
[badgeos_achievement id=5][/badgeos_reveal]
Do you have a current way you’re already displaying the achievements list? or is that something that still needs to be figured out?
I’m half braining up a way to check if the user is logged in and if they have already earned the primary achievement, and only output stuff to the browser if they have, but need some more details on what you have now ??
Currently, we are showing:
all badges
by achievement type
and a vision mapping page with shortcode layoutAs the community grows and more training and badges are created, I am trying to avoid info overload and reduce the number of pages need to create the desired result. It would be easier to reference a single page with some logic vs a page for each step in our processes.
This also runs on buddypress and uses WPMUDev Membership Premium
Correct me if I’m wrong, but are you the one who was doing the tabs on a page that showed a different achievement type per?
I am not, I am the one who asked for the html ability in the congrats text. Which if I may add, is working great and helps to advance our members through our process.
Ah yes, my apologies there.
To clarify my question, are you using the post type archive urls for your listing of available achievements? or the provided
[badgeos_achievements_list]
or some homebrewed display? Trying to determine where I could possibly hook into and alter display based on the existing achievements earned.We are using your provided short-codes and trying to achieve the ability to hide text in the badge so that we can not only show the steps in the congrats text, but also reveal text and short-code withing the original badge as to how to achieve the next badge. Your system does a better job of displaying the badges within the Buddypress and the website. Therefore, we are using your badging system as the primary achievement by completing a Learndash course.
We want to walk people through our training vs having them randomly achieve badges via activity.
We list all badges in the menu, by achievement type in the menu and a page using the individual badge short-codes in order to create a path of completion. The challenge is, that once inside of a badge, they are redirected to the Learndash course. They complete the course and then we have to redirect them back to the badge. Then the completed congrats text is revealed and we use the html to suggest the next step and thought it may be a good way for us to add some hidden text in the badge itself and/or on the page that has the path of completion steps.
Our membership plugin will allow us to hide text depending on their website membership, using short-codes, and I was hoping that a similar system could be used depending on whether a badge was earned or not.
This could be used to hide upsale products, text, badges, courses, etc depending on the state of a badge – completed or not completed.
Hope this helps…
Are these achievements forced to be in sequential order or is it just suggested by text on the page to be sequential?
Both really…
We are using 6 badges, linked to Learndash courses, as an application process. Once Learndash course is completed or submitted for approval, then the badge is awarded.
Community member badge (TOS)
Badge member (product info)
Team member (sales force)
Author
Presenter
TrainerWe use the badges as a course teaser and flag for achievement within the community.
Learndash is currently handling the prerequisite to gain access to additional courses and as a result, the member can still read the intro in all of the badges
If we had a short-code that checked the badge status for completion, messages could be embedded anywhere on the website to members that have been awarded the achievement. As stated above, it could also be used to upsell additional products as well by wrapping the content with a positive or negative achievement status short-code.
How frequently are you planning to change or create new achievements like this? or is going to be pretty static for set achievements needing this?
my latest thoughts would be something like [badgeos_revealed_achievements] or so as a possible shortcode. I’m mulling over the idea of a “primary” attribute that is used for the main one shown. If not provided, it’d fall back to the current achievement type post. It would use that primary ID to fetch all of the child achievements needed for it, and then in the output, check if the current user has earned the primary achievement. If they have, display the child achievements. If they have not, display something else.
This would allow you to choose which primary ID to display, say if you want to create a page full of these, instead of just on the one single achievement type url.
Does that sound like something you’d be able to customize to your needs if you have a skeleton available for the querying?
These are going to be static achievements and it will be the LMS courses that will possibly change as the product evolve.
Sounds like you are expanding on the idea (which is always a good thing). I was simply looking for the ability to create dynamic pages that would hide text, images, badgeos shortcode, etc depending on whether a badge achievement status was achieved or not.
Well, it’s a case of you need the parent/1st achievement that needs to be earned, and then away to determine if the user has that achievement. If they don’t, don’t show the rest, if they do, do show the rest. Either I’m overthinking or you’re thinking it’s not as complex as it is.
I am, admittedly, assuming it’s not a “hidden” as in css ‘display: none’ that could be toggled/shown with some js, and more as in “not available at all on the page until X is earned”
- The topic ‘Shortcode to reveal additional badges’ is closed to new replies.