• Resolved HungryJos

    (@hungryjos)


    I have a problem with the Hcaptcha that is not visible when the login screen (wp-login.php) is loaded.
    It happens on most/all of the sites I’m using hcaptcha on.

    This is what happens: login screen with form loads. Hcaptcha is not visible. When you enter login credentials and log in, there is an error message saying you have to complete the hcaptcha. This is confusing, because not visible.
    Only if and when you click next to the login form, the hcaptcha show up.
    Is there a solution?

Viewing 4 replies - 1 through 4 (of 4 total)
  • Plugin Contributor kaggdesign

    (@kaggdesign)

    Looks like the invisible hCaptcha does not show on your site for some reason. Without looking at your site, I cannot reproduce the problem.

    You can use visible hCaptcha, however. Use Settings->hCaptcha->hCaptca Size->Normal.

    Thread Starter HungryJos

    (@hungryjos)

    I’m not using invisible hcaptcha: the problem is that the hcaptcha only becomes visible when you click next to the login form, or scroll down.

    I’ve tried with all settings: normal, compact and invisible: same problem. The Hcaptcha simply does not load until there is some interaction from the user, outside of the form be it clicking next to it or scrolling down the page, both of which are never done by default, as you only click in the login fields and you don’t scroll down as there is nothing to scroll to.
    I’ve also tried all settings in different browsers, same problem everywhere.

    The hcaptcha also does not load on elementor pro form; you have to do the same clicks or scrolls to render it visible.

    Plugin Contributor kaggdesign

    (@kaggdesign)

    The plugin loads the hCaptcha script with a delay until user interaction: mouseenter, click, scroll or touch. This significantly improves Google Pagespeed Insights score.

    To load the hCaptcha widget instantly, you can use the following filter:

    
    /**
    * Filters delay time for hCaptcha API script.
    *
    * Any negative value will prevent API script from loading at all,
    * until user interaction: mouseenter, click, scroll or touch.
    * This significantly improves Google Pagespeed Insights score.
    *
    * @param int $delay Number of milliseconds to delay hCaptcha API script.
    *                   Any negative value means delay until user interaction.
    */
    function my_hcap_delay_api( $delay ) {
        return 0;
    }
    
    add_filter( 'hcap_delay_api', 'my_hcap_delay_api' );
    
    Thread Starter HungryJos

    (@hungryjos)

    It makes sense that it would load on interaction, except on the login page it doesn’t work. When you click in the login form it does not load.

    I will try with the filter.

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Hcaptcha not visible when login screen is loaded’ is closed to new replies.