Home>Support>Problem with Easy Forms for MailChimp widget

Problem with Easy Forms for MailChimp widget

The Easy Forms for MailChimp plugin has a new version 6, a rewrite offering a lot more features. In a nutshell: it allows for multiple sign-up forms connected to lists in a MailChimp account.

When adding a widget to a Page Builder page, I can select which form to use, and edit it just fine. But once I hit “Save” on a page, it seems that the form_id stored is that of the last form in my list, not the one selected.

I’ve also asked at the support forum for the plugin, but perhaps there are some ideas here too? New to debugging WordPress issues like this, but open for suggestions.

https://wordpress.org/support/topic/with-pagebuilder-plugin-the-proper-form-is-not-chosen

This is our free support forum. Replies can take several days. If you need fast email support, please purchase a SiteOrigin Premium license.

  1. 8 years, 11 months ago rolf

    To add: I had a look at https://siteorigin.com/docs/page-builder/widget-compatibility/ but new to debugging WordPress plugins, haven’t found yet.

  2. 8 years, 11 months ago Andrew Misplon
    Hi, I Work Here

    Hi rolf

    Thanks for reaching out and for the detailed report.

    Unfortunately, with cases like this the fix almost always needs to come from the plugin developer. The widget compatibility guide you’ve linked to above is the best link to send to the plugin developer. Page Builder has over 600,000 active installs and growing, hopefully this helps with interest from plugin developers to resolve challenges like this.

    From both the support and development teams here at SiteOrigin, these issues are unfortunately not usually hotfixable. Hopefully the developer can attend. We’re here to help if they have any questions.

  3. 8 years, 11 months ago rolf

    Hi Andrew,

    I spent some time digging into this, and I think I found the culprit:

    PageBuilder scans the forms in each widget for elements with a “name” attribute. The Easy Forms plugin assigns a “name” to each in the form select dropdown. As a result, PageBuilder processes these individual options after it processed the selected option.

    My suggestion is to include an extra check in PageBuilder to prevent processing individual options:

    $ git diff wp-content/plugins/siteorigin-panels/js/siteorigin-panels.js
    diff --git a/wp-content/plugins/siteorigin-panels/js/siteorigin-panels.js b/wp-content/p
    index 91e5679..dbfd236 100644
    --- a/wp-content/plugins/siteorigin-panels/js/siteorigin-panels.js
    +++ b/wp-content/plugins/siteorigin-panels/js/siteorigin-panels.js
    @@ -2466,6 +2466,9 @@ String.prototype.panelsProcessTemplate = function(){
                         }
     
                     }
    +                else if ( $$.prop('tagName') === 'OPTION' ) {
    +                    // Don't do anything with individual options with a "name"
    +                }
                     else {
                         // This is a fallback that will work for most fields
                         fieldValue = $$.val();
    

    Kind regards,
    ~~Rolf.

  4. 8 years, 11 months ago Andrew Misplon
    Hi, I Work Here

    Hi Rolf

    This sounds like quality feedback, thanks for taking the time to dig so deeply into the problem. I’ll log this now.

Replies on this thread are closed. Please create a new thread if you have a question, or purchase a SiteOrigin Premium license if you need one-on-one email support.

Get The Most Out of SiteOrigin with SiteOrigin Premium

Find Out More