</body>
tag.
Installation options:
Scenario | How to implement |
---|---|
Show on every page | Add snippet to your main template/layout file |
Show only on specific pages | Add snippet only to those pages |
Show only to logged-in users | Wrap the snippet in your auth check:{% if USER_IS_AUTHENTICATED %} <!-- snippet here --> {% endif %} |
Show based on user role | Create logic to conditionally render:{% if user.role == 'premium' %} <!-- snippet here --> {% endif %} |
The script loads asynchronously and is less than 5kb so it won’t slow down your page.
Interface changes in Interface tab do not require updating your embed code.
Symptom | Possible Cause | Fix |
---|---|---|
Bubble not visible | Script blocked by CSP / ad-blocker | Allow /embed.js and /embed/* in your CSP |
Mixed-content warning | Site served over HTTP | Use HTTPS for both your site & Franko |
Modal opens but is blank | JavaScript conflict | Check console for errors; ensure no global FrankoModal conflicts |
Wrong modal opens, or all bubbles open same modal | Multiple Franko snippets loaded on same page | Use only one Franko snippet per page. |