Just found out that the error message is shown only on the first time I âStart a Product Tourâ. If I try to start it again, it will work, but every time I click the button, the product tour runs all the steps as many times I click the button.
As an example, in a product tour of 2 steps, If I click the button to start tour for the first time, the error appears. If I click on it again, the steps are shown, but not only the 2 steps because Iâll see the same 2 steps added to the end of the second step (4 steps total). And every time the button is clicked, the loop starts again with 2 more steps at the end.
[SOLVED]
Well, maybe I was just not following instructions as needed, but since there may be other lazy people like me, Iâll comment what was happening hahaha If you put the steps on the page load APART from the workflow that âStarts the tourâ, no error occurs. Donât know exactly why but these functions need to be put on separate workflows to work correctly.
Think about the action that youâre doing when you push the button. If every time you run a workflow that adds steps and then starts the tour it might not be clearing the previous tours steps.
So, if you donât clear the previous tours steps and every time you run the workflow action it adds more steps then starts a tour again Then it would make sense to see the tour run double or triple or quadruple times. Cause it was told to add the same steps to a list of steps again.
** this isnât my plug-in so Iâm just kind of assuming this is what happens here. I have a similar plug-in on the marketplace that creates tours based on steps that the user sets up. Iâve run into the same issue with mine
Like @alejandrowunderlich, Iâm also interested in the answer to this question too @nocodejungle. Plugin looks awesome, but Iâd love to customize those things too and some of the padding, etc.
Seems conditional states do not work, at least as far as setting them via the product tourâs step index. It seems that if the condition is true when the tour starts, then it is applied through all steps. If the condition is false when the tour starts then it is not applied at all, even if it becomes true later.
i.e. if you set a conditional state for step one, then it is applied throughout the tour. Conversely if you set it for any other step, it is not applied at all.
EDIT:
On further investigation, conditional behavious is erratic, it works as expected for some properties, but others it either does not work at all or does not work properly.
About data persistence, itâs on your side. You choose where you want to store a variable/property that knows if the user has completed the round. The goal is to allow you to start the tour whenever you want.
We usually add a âhasCompletedOnboardingâ or âisFirstTimeUserâ property in the User model.
As soon as the user finishes his tour youâd update this property and the next time he will logs in youâll check if you should show him the tour or not.
Not sure if I am doing something wrong here. Every time a user logs onto the page, the onboarding flow starts again. I am using it on the dashboard which the user will visit many, many times. How do I make sure the onboarding flow is only shown once?
Try to open in Chrome, minimize the tab horizontally to be like a phone width size, and then trigger the tour, click couple of time ânextâ, and for me at least, tour disappears after a while, 3rd stepâŠ
Hey @nocodejungle, is there a way to reference an element in a popup? Iâm trying to have a step reference the âURLâ input field in this popup, but looks like the help text may be hidden behind the popup.