Forum Replies Created

Viewing 15 replies - 1 through 15 (of 23 total)
  • leaninonlife

    (@mattchewbacca)

    I am using v6.2.3 and this same issue is present in the new customer email as well.

    Your account has been created as Customer. Follow the bellow details to log into the system

    I would update to the latest version, but it breaks my screen manager rules.

    The only fields that this plugin supports, is “User Name (concatenated form of first name + last name) = Username” and Email… and password.

    I have written a little script to override the issue of forcing the Username to be the User’s Name, and choosing an Email instead… This is a good place to start if you want to custom code the ability to add extra fields and assign them to custom tables in the database.

    This isn’t a “problem” per se. If you are using a plugin called “Heartbeat Control” or similar, to modify/remove your WordPress Heartbeat interval or only use the heartbeat on edit/post pages then this will appear inside Query Monitor.

    If you are not using any plugin or tool it is possible that there is something built into a plugin you are unaware of or bundled in your theme.

    Unfortunately not, not yet at least. Hopefully they add it in the future. The pro version only supports the addition of the email and name field. But whatever you choose for the name, also serves as the Username. I made a quick little hack to work around it just so I could use it since my entire site revolves around certain functionalities of integrations within a single contact form 7 form.

    It confuses people, its unintuitive, you can’t enter your password twice if you decide to customize it. But if you inspect the code there is a no-js fallback with two fields and user verification without the generator. Surely it can’t be hard to get back….

    I am looking for this too. I found someone reference the CF7 website and say it was listed there that placeholders were possible, but I navigate to the link and search to find nothing… Disappointed. You would think if you select the “Insert a blank item as the first option” field and then use placeholder… It could write it out disabling the first item as in above. Or at a minimum ADD a disable first option field in the generator.

    • This reply was modified 2 years, 9 months ago by leaninonlife.

    Could you please reference my comments on this page for your pro plugin as far as adding the reply-to header either by duplicating the from selection with 1 line of code to your plugin to ensure that emails are not trapped in spam due to lack of DKIM being able to authenticate from missing mail headers?

    As well as the short and sweet little fix I made to fix the User Name problem with the email?

    Custom Fix to Firstname Lastname Email User Name Issue

    Mod, if you could change the title of this post to remove the PRO tag at the end I can provide the solution for those of you on the FREE edition as well. I’m sure a lot of other people have struggled with similar problems due to the lack of options even the paid version doesn’t support as well as a way to prevent their emails from being blocked by strict firewalls.

    TO RESOLVE THE USERNAME EMAIL FIRSTNAME LASTNAME
    Conundrum and Still Allow the User’s Name to be their First and Last name and not their Email Address TWICE a quick fix without having to make any conditional statements is just to hardcode the $username to be the $email.

    Open up your plugin folder in wp-content > plugins > frontend-registration-contact-form-7 and you will see only 2 php files.

    Resolution to this problem is to navigate to line 31 of frontend-registration-opt-cf7.php (this fix is the same on both the PRO and the FREE versions except for the line number).

    And find the following:

    $username = strtolower(str_replace(' ', '', $name));

    (line 31 in FREE and line 37 in PRO)

    Replace the value of the variable with the $email variable to ensure all usernames are derived from the email address rather than removing the spaces in the $name string.

    $username = $email;

    Your code should look something like this…

    // Construct a username from the user's email
    $username = $email;
    $name_parts = explode(' ',$name);

    This works best if you have the your-name option set in the wp-admin under “Selected Field for User Name” so that the plugin knows to use the $name variable as $name_parts to explode into ‘first_name’ and ‘last_name’ during the user creation process.

    Ideally you would want to code it to have a dropdown for username and a dropdown for User’s Name (first and last) or User’s First Name and User’s Last Name individually. Then point the input of those values directly into the $userdata.

    THEN TO ALLOW SENT MAILS TO SUPPORT DKIM (PRO Only)
    You simply need to add a $header value for ‘Reply-To’ in the plugin file you just had open: frontend-registration-opt-cf7.php

    On line 183 add the new $header value like so as to include the same “sender” email as the reply-to email since there is only one field in the plugin. It doesn’t entirely fix the problem that the feature isn’t available, but it resolves the issue of authentication without having to modify the plugin’s interface as not many people have a custom reply-to and sender on email messages sent from their mail server on wordpress unless they’re actually being sent from a physical person to you.

    //Add Reply-To Header for DKIM Auth to be Successful Above the From: $header
    $headers .= 'Reply-To: '.$blogname.' <'.$_cf7frfrom_.'>' . "\r\n";
    $headers .= 'From: '.$blogname.' <'.$_cf7frfrom_.'>' . "\r\n";
    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.

    Thank you,

    I had to add reply-to headers to the plugin, so I just went in and reprogrammed it to take the $email variable instead of

    On line 183 I added the first snippet here:

    //Add Reply-To Header for DKIM Authentication to be Successful
    $headers .= 'Reply-To: '.$blogname.' <'.$_cf7frfrom_.'>' . "\r\n";
    $headers .= 'From: '.$blogname.' <'.$_cf7frfrom_.'>' . "\r\n";

    Then to fix the Username issue on line 37 of the opt file:

    // Construct a username from the user's email
    $username = $email;
    $name_parts = explode(' ',$name);

    Took me all of 5 minutes to find it. The developer should copy/paste (at a minimum meet today’s email best practices to prevent spam filters from tossing people’s registration information away by adding a reply-to header so that DKIM/SPF are supported on outgoing emails through the PHPMailer. Without the reply-to header its unable to authenticate the message.

    • This reply was modified 2 years, 9 months ago by leaninonlife. Reason: Removed extra whitespace
    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.

    Fixed it!

    Took me a little while, but turns out it was a mod_sec rule from my host… Siteground.

    If you want to temporarily resolve your issue while you have your host implement the proper rules you can use the following in your .htaccess file:

    <IfModule mod_security.c>
    SecFilterEngine Off
    SecFilterScanPOST Off
    </IfModule>

    To disable the mod_sec. Instantly I was able to save my license.

    More than likely the problem is related to Ajax. Ajax will not work on static pages.

    However, I found several plugins combined that actually gave me high scores in Google Insights, GTMetrix, and Yslow (96, 100, 99) than with W3 Total Cache in any configuration possible.

    I personally use the combination of WP Speed Grades Lite, JS & CSS Optimizer, (sometimes Falcon too). Once I remove blogging functionality and all of the wordpress headers, minify the CSS & JS and use my own browser caching code in .htaccess (which you can actually cut from WTC before you disable it and paste it back in afterwards lol. Its lightning. Went from like 100 different HTTP requests down to less than 20 on one of my sites.

    Hummingbird is also a really good caching plugin. Have you tried simply disabling page caching on W3 Total Cache?

    You could try to go in and make exceptions for the pages that you use Download Manager on inside of W3TC to prevent those pages and tools from being cached.

    I am having the exact same problem.

    I use BeTheme on WordPress 4.7 with Siteground Hosting. Ajax just receives a 400 Bad Request in console. Then if I try to login, I get a different Ajax error on the POST.

    Please help! I cannot even save my license key.

    To add to this, when I do a scan of my site with PHP Compatibility checker I get the following errors… I am looking to upgrade my website to PHP 7.x and this plugin is currently the only thing holding me back from just going for it although its not in the end going to keep me from it if I have to stop using the cloudflare plugin altogether if need be.

    Although I’m sure there is a reason I am seeing this. Currently I am running PHP 5.6 on a siteground server and WordPress 4.7 (latest). Also using W3TC for caching etc.

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/ResourceIteratorApplyBatched.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/ResourceIteratorClassFactory.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/MapResourceIteratorFactory.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/CompositeResourceIteratorFactory.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/ResourceIteratorInterface.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/AbstractResourceIteratorFactory.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/ResourceIteratorFactoryInterface.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/ResourceIterator.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    FILE: …/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/src/Guzzle/Service/Resource/Model.php
    ——————————————————————————————————————————————————————-
    FOUND 1 ERROR AFFECTING 1 LINE
    ——————————————————————————————————————————————————————-
    3 | ERROR | ‘resource’ is a reserved keyword as of PHP version 7.0 and cannot be used to name a class, interface or trait or as part of a namespace (T_NAMESPACE)
    ——————————————————————————————————————————————————————-

    BTW Technically the style that gets enqueued by the plugin is ‘bwg_googlefonts’ on line 2253 in photo-gallery.php during the global inline style script, so adding wp_dequeue_style(‘bwg_googlefonts’); instead would be the quickest easiest route to removing the google fonts from loading on all of your pages.

    function unload_fonts() {
    		  wp_dequeue_style( 'bwg_googlefonts');
           }
    
    add_action('wp_enqueue_scripts', 'unload_fonts', 100);

    And if you want to get rid of the rest of the plugin’s bloat I recommend de-queuing the scripts and styles that in my case are not needed either…

    function unload_dwgbloat() {
    		  wp_dequeue_style( 'bwg_googlefonts');
    		  wp_dequeue_style( 'bwg_mCustomScrollbar');
    		  wp_dequeue_style( 'bwg_sumoselect');
    		  wp_dequeue_script( 'bwg_sumoselect');
    		  wp_dequeue_script( 'bwg_mCustomScrollbar');		 
           }
    
    add_action('wp_enqueue_scripts', 'unload_dwgbloat', 100);

    This worked for me…

    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.
    • This reply was modified 2 years, 9 months ago by leaninonlife.
Viewing 15 replies - 1 through 15 (of 23 total)