Forum Replies Created

Viewing 15 replies - 316 through 330 (of 378 total)
  • Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    Thanks again for your suggestion! We’ve just release a new version of the plugin which now supports this option in the plugin settings. Should you have any questions or notice any issues with the latest update please reply back to this thread and let us know. We’ll mark this thread as resolved for now. Have a great rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    Thanks for bringing this to our attention! It looks like that we are using some jQuery without expressing it as a requirement. This should be fixed in the latest update which just released. In the future we’ll look at decoupling this and converting the jQuery block to vanilla Javascript to remove the requirement entirely.

    If the latest update doesn’t fix your issue please reply back to this thread and we can look into this further. We’ll mark this thread as resolved for now. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    We’ve look into the option of adding defer to the script using the script_loader_tag filter hook and have decided that this is not something we feel is necessary. In most cases the reCaptcha should load into the footer so that the defer attribute is not necessary. In the other cases we feel it should be left to the person running the website whether this is something they deem necessary.

    If this is something you deem necessary there is the filter hook above which will allow you do to this. A code example is:

    Of course we suggest you have full backups of your website before attempting any code based solutions.

    /**
     * Add defer attribute to Google reCaptcha script
     *
     * @param String $tag		- Script HTML
     * @param String $handle	- Unique identifier for script
     *
     * @return String $tag
     */
    function prefix_add_defer_attribute( $tag, $handle ) {
    	
    	// The handle for our google recaptcha script is <code>google-recaptcha</code>
    	// IF it's not this handle return early
    	if( 'google-recaptcha' !== $handle ) {
    		return $tag;
    	}
    	
    	// IF we don't already have a defer attribute, add it
    	if( false === strpos( $tag, 'defer ' ) && false === strpos( $tag, ' defer' ) ) {
    		$tag = str_replace( 'src=', 'defer src=', $tag );
    	}
    	
    	return $tag;
    	
    }
    add_filter( 'script_loader_tag', 'prefix_add_defer_attribute', 10, 2 );

    Additionally, there are plugins on the repository that specialize in adding defer/async attributes to scripts:

    https://ww.wp.xz.cn/plugins/css-js-manager/
    https://ww.wp.xz.cn/plugins/async-javascript/
    https://ww.wp.xz.cn/plugins/shins-pageload-magic/

    We understand this may not be the solution(s) you’re looking for but feel that these should either be inherent to WordPress, handled by a specialized plugin, or added at the site administrators discretion. Should our opinion on the matter change or we have been swayed otherwise and make this change at a later date we will update this thread to let you know.

    We’ll mark this thread as resolved for now but should you have any questions, comments, or concerns please reply back to this thread. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    That is correct. This plugin handles v2 reCaptcha which AMP does not support. The Contact Form 7 plugin handles reCaptcha v3 and may be able to include a fix for AMP pages.

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    Unfortunately, it appears that the AMP project only supports the v3 version of ReCaptcha and does not support v2 which this plugin handles. You may see the documentation on their website at the following URL:

    https://amp.dev/documentation/components/amp-recaptcha-input

    This appears to be a recent development in the AMP project ( as of April 2019 ) so it may take awhile for other projects to catch on. Since this plugin only supports v2 reCaptcha we suggest bringing this issue up on the Contact Form 7 forums since that plugin handles reCaptcha v3 out of the box.

    Hopefully that answers your question. We will mark this thread as resolved for now but should you have any additional questions or would like further clarification please reply below. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    That’s a great idea and entirely doable as far as we can tell. We’ll include this with our next update as an additional option the user may set. Thanks for the suggestion, we’ll leave this thread open and notify you here whenever the update releases. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    As Frank above states above, since this CSS and JS are 3rd party scripts loaded from Google and required to run ReCaptcha it’s a difficult task. We cannot modify Googles loaded CSS but the odds are in you favor. If someone has visited a website that runs ReCaptcha they may have that CSS file cached in their browser since reCaptcha is common enough and it would be referencing the same URL.

    The ReCaptcha JavaScript is already loading into the footer of the website so it should be relatively deferred in the load process. We can look into adding a defer attribute but we would need to test how that will effect loading the reCaptcha module across different scenarios.

    Our humble opinion is that it’s easy to get lost in all the different website optimization tools and to process the results with a grain of salt. In most cases, small changes like these do not supply much of a load boost or noticeable speed boost at all. This of course all depends on the size of the site.

    That being said, thank you for bringing this to our attention. We will look into adding a defer attribute to the script and the greater effects it may have on loading the reCaptcha module. We’ll leave this thread open until we have more information regarding this issue. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Fantastic! We’re glad you found a solution. We’ll mark this thread as resolved for now. Have a wonderful rest or your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    If you could link the page you’re having trouble with we may be able to assist you better. We tested a few Modal plugins and didn’t run into issues.

    Are you loading the shortcode via AJAX?

    Could an option be to hide the form on the page and load the contents of the div into the modal window?

    Could you point us in a direction where we may be able to replicate the same issue you’re running into?

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    Thanks again for bringing this to our attention. The latest update should fix these Flamingo issues by specifically looking for a recaptcha verification before adding anything to Flamingo. If you continue to have issues please reply back to this ticket and we may be able to look into it further. We’ll mark this thread as resolved for now, have a wonderful weekend!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    We’ve looked into this a bit and found the core of the issue. Contact Form 7 is using the wpcf7_submit (contact-form-7\modules\flamingo.php LN 7) hook to submit to Flamingo regardless if the submission is reCaptcha verified or not. So submitting a form without interacting with the reCaptcha will still submit to Flamingo but end up in the Spam “category”.

    In that same file is a hook which could be used to prevent spam from being submitting at all ( by excluding it from the $cases Array passed to the filter ) but that may not be an optimal solution in all use-cases:

    // The hook in Contact Form 7 in regards to what gets saved in Flamingo.
    $cases = (array) apply_filters( 'wpcf7_flamingo_submit_if',
    		array( 'spam', 'mail_sent', 'mail_failed' ) );

    This is still something we’re investigating to see whether or not we can wait until the submission is reCaptcha verified before Flamingo grabs ahold of it. Excluding spam from the above array could be a short-term solution though.

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    We’ve viewed your linked website on a few other browsers and it appears to be centered. We’re glad you were able to find a solution, it may be helpful to share your solution with future readers 🙂

    We will mark this thread as resolved for now but should you have any additional questions or we’ve misunderstood the question here please come back and let us know. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    The neat thing about Contact Form 7 is by using both by using shortcodes and utilizing hooks it’s pretty easy to jump in when and where you need to so you can inject your own functionality.

    To remove the reCaptcha for logged in users we first need to override the [recaptcha] shortcode:

    /**
     * Override the reCaptcha shortcode for Contact Form 7 and WPCF7 ReCaptcha
     * Return empty string so it does not display
     *
     * @return void
     */
    function prefix_recaptcha_for_logged_in_users() {
    
    	if( ! is_user_logged_in() ) {
    		return;
    	}
    	
    	wpcf7_remove_form_tag( 'recaptcha' );	// Remove all reCaptcha tags
    	wpcf7_add_form_tag(						// Re-add recaptcha tag
    		'recaptcha',
    		function() {						// Required PHP PHP v5.3+
    			return '';						// Return empty string in shortcode callback
    		},
    		array( 'display-block' => true )
    	);
    
    }
    add_action( 'wpcf7_init', 'prefix_recaptcha_for_logged_in_users', 30 ); // Contact Form 7 uses priority 10, WPCF7 ReCaptcha uses priority 20, so we need to use 30+

    Next we need to remove all reCaptcha related hooks that are added both by WPCF7 ReCaptcha and Contact Form 7. This plugin uses the setup_theme hook so we can add a later priority and remove anything added.

    /**
     * Remove any reCaptcha related hooks added both by Contact Form 7 and WPCF7 ReCaptcha
     *
     * @return void
     */
    function prefix_recaptcha_hook_management() {
    	
    	if( ! is_user_logged_in() ) {
    		return;
    	}
    	
    	// reCaptcha Verification
    	remove_filter( 'wpcf7_spam', 'wpcf7_recaptcha_verify_response', 9 );
    	remove_filter( 'wpcf7_spam', 'iqfix_wpcf7_recaptcha_check_with_google', 9 );
    
    	// reCaptcha Enqueues
    	remove_action( 'wp_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts', 10 );
    	remove_filter( 'wp_enqueue_scripts', 'iqfix_wpcf7_recaptcha_enqueue_scripts', 10 );
    
    	// reCaptcha Footer Javascript
    	remove_action( 'wp_footer', 'wpcf7_recaptcha_onload_script', 40 );
    	remove_filter( 'wp_footer', 'iqfix_wpcf7_recaptcha_callback_script', 40 );
    	
    }
    add_action( 'setup_theme', 'prefix_recaptcha_hook_management', 20 ); // WPCF7 ReCaptcha uses priority 10, so we need to use 10+

    You could add the above 2 functions into your own mini-plugin, into a custom themes functions.php, or more likely into a child theme functions.php. The prefix portion of the functions should be replaced with something unique to your theme or plugin.

    Hopefully that answers your question but should you need any further assistance please reply back to this forum and we may help you further. We’ll mark this thread as resolved for now. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    One method is to increase the security level in the API settings on Googles end. ReCaptcha v2 has been out long enough that some bots have figured out how to solve the ReCaptcha. Since v3 is a learning algorithm it’s a bit more difficult to beat once it’s been honed in on your specific site which may be an option for you and one that Contact Form 7 supports out of the box.

    Additionally, looking at your website you do have your email address non-encrypted which is easy for spambots to scan a website and pick up on. We would suggest some sort of plugin which disguises your email address, such as Email Address Encoder. This may not be the end-all-be-all solution but it will surely help.

    Finally, it has been brought to our attention that Flamingo seems to be picking up many spam submissions instead of disregarding them which may be an issue with how our plugin handles the reCaptcha v2 response or how Contact Form 7 labels spam. As far as we can tell it isn’t sending those spam emails but logging them ( in Flamingo ). None the less it’s something we’re actively looking into.

    To receive updates on the progress of our investigation we suggest following this thread: Still getting false positives. Have a wonderful rest of your week!

    Plugin Author IQComputing

    (@iqcomputing)

    Hello,

    We do see what you mean. It could be an issue with the verify() method of the extended WPCF7_RECAPTCHA class. This is something we will need to investigate further before pushing out a patch or formulating a more informative reply. Thank you for bringing this to our attention! We’ll leave this thread open until we come to a solid conclusion.

Viewing 15 replies - 316 through 330 (of 378 total)