Help Center
  • Woocommerce
    • Reinstall Woocommerce Missing Pages
    • Hide/Customize Woocommerce Components with CSS
    • Remove Additional Information Tab @ Single Product
    • Long Description Shortcode for Woocommerce
    • PHP Snippet: Woocommerce Reviews as Shortcode
  • Flatsome
    • Mega Menu & Custom Dropdown with UX Builder
    • Open a Lightbox Popup
    • Upload Shortcode in UX Builder
    • Product Variation Swatches
    • Custom Product Layout for Flatsome
    • Replace Flatsome or Woocommerce Icons
    • Open Chat Through a Button
Powered by GitBook
On this page
  • Widget Javascript Function
  • For JivoChat
  • For Beacon (from HelpScout)
  • For Tawk.to
  • For Tidio
  • Conclusion
  1. Flatsome

Open Chat Through a Button

PreviousReplace Flatsome or Woocommerce Icons

Last updated 10 months ago

In this article, we'll walk you through the process of opening a chat through a button in Flatsome and provide examples for three popular live chat widgets: JivoChat, HelpScout, and Tawkto.

It's essential to watch the video, otherwise you'll not achieve the expected result. Below is the respective javascript function you need:

Widget Javascript Function

The class you must add to the button is called toggle-chat , but you can change it at any time. Remind to change it also in the javascript function document.getElementsByClassName("toggle-chat");

The function below must be added on Flatsome > Advanced > Global Scripts > Body Scripts - Bottom

For JivoChat

<script>
    document.addEventListener("DOMContentLoaded", function() {
        var toggleChatElements = document.getElementsByClassName("toggle-chat");

        for (var i = 0; i < toggleChatElements.length; i++) {
            toggleChatElements[i].addEventListener("click", function() {
                 jivo_api.open(); // Chat function to open chat
            });

            // Add href attribute
            toggleChatElements[i].href = "javascript:void(0);";
        }
    });
</script>

For Beacon (from HelpScout)

<script>
    document.addEventListener("DOMContentLoaded", function() {
        var toggleChatElements = document.getElementsByClassName("toggle-chat");

        for (var i = 0; i < toggleChatElements.length; i++) {
            toggleChatElements[i].addEventListener("click", function() {
                Beacon('toggle'); // Chat function to open chat
            });

            // Add href attribute
            toggleChatElements[i].href = "javascript:void(0);";
        }
    });
</script>

For Tawk.to

<script>    
document.addEventListener("DOMContentLoaded", function() {
        var toggleChatElements = document.getElementsByClassName("toggle-chat");

        for (var i = 0; i < toggleChatElements.length; i++) {
            toggleChatElements[i].addEventListener("click", function() {
                 window.Tawk_API.toggle(); // Chat function to open chat
            });

            // Add href attribute
            toggleChatElements[i].href = "javascript:void(0);";
        }
    });
</script>

For Tidio

<script>
(function() {
function onTidioChatApiReady() {
window.tidioChatApi.hide();
}

if (window.tidioChatApi) {
window.tidioChatApi.on("ready", onTidioChatApiReady);
}

document.querySelector(".chat-button").addEventListener("click", function() {
window.tidioChatApi.show();
window.tidioChatApi.open();
});
})();
</script>

Conclusion

Opening your chat through a native Flatsome button enhances customer interaction and support. Make sure to follow these steps and use the provided JS sample codes.