• Resolved Paul Hartman

    (@paul-hartman)


    A user contacted us to say that the donation form is not visible. I verified that this is the case (Samsung Galaxy S21 using Chrome and Firefox). Works fine on desktop. Is there something I need to do to enable 4.0.0 on phones?

    The page I need help with: [log in to see the link]

Viewing 12 replies - 1 through 12 (of 12 total)
  • Thread Starter Paul Hartman

    (@paul-hartman)

    I found another site where it doesn’t work on phone. Donation form is not visible. And it works on a third site, which is different from the non-working sites in that it uses a single-page donation form rather than paged forms like the non-working sites. Small sample size here, so may not be significant.

    Thread Starter Paul Hartman

    (@paul-hartman)

    Update: The donation form is visible when logged in to WordPress. Not visible when logged out. Any ideas of what to try to get this working?

    Thread Starter Paul Hartman

    (@paul-hartman)

    Any help with this? I have 3 sites where there are no problems with GiveWP 4.0.0. But it is broken on 4 other sites. I restored the backup on 2 of them so they are using 3.22.2. On 2 other sites I could not restore backup so I added HTML code for the iframe that the form is embedded in.

    The issue is that the iframe does not appear if you are not logged in to WordPress. It’s not a phone/mobile issue as I initially thought. I grabbed the HTML code for the iframe when logged in to WP and replaced the shortcode for the GiveWP form with the HTML. That works but is not a long-term solution.

    Plugin Support Robin Joshua Del Mundo

    (@robindelmundo)

    Hi @paul-hartman ,

    Glad you reached out! Happy to help, and please excuse the slow turnaround here.

    I see this form — https://chesapeakewomenanglers.org/donation/, and I checked it on Browserstack with a Samsung S21 phone using Chrome, and it looks like this has been fixed — https://www.loom.com/share/7abfa8f3f19e4cb3a5fca28e99142375?sid=be5a6260-f74d-4dbb-91c7-4cf4cc101ecb.

    For the 4 other sites wherein 4.0.0 is broken, is it going to a 404 when you view it while not logged in?

    You might want to try refreshing your permalinks by simply visiting your permalinks settings. This is located in your main WordPress — Settings menu. You do not have to make any changes, rather, simply visiting the Permalinks page will “flush” and refresh all the links on your website.

    I would also suggest temporarily deactivating caching on your site (if you have any kind of caching plugins), then visit your Permalinks page again.

    If the issue persists, can you send a sample page or the single view of the form wherein the issue is present?

    Looking forward to helping you get to the bottom of this!

    Thread Starter Paul Hartman

    (@paul-hartman)

    That donation page works because I substituted the iframe code in place of the GiveWP shortcode (I had to get the donation form working quickly). The iframe is not present when you are not logged in to WP. Here is a test page with the GiveWP shortcode:

    https://chesapeakewomenanglers.org/test-2/

    I resaved permalinks and it still doesn’t work. I cleared cache a million times.

    I never see 404 on any of the sites. It’s simply the iframe is missing. I changed angle brackets to square brackets below:

    [iframe title=”Donation Form” id=”give-form-shortcode-1″ src=”https://chesapeakewomenanglers.org/?givewp-route=donation-form-view&form-id=5179&locale=en_US” style=”width: 1px; min-width: 100%; border: 0px; overflow: hidden; height: 775px;” scrolling=”no”][/iframe]

    All I did to temporarily fix the problem is paste the above code (with angle brackets) into the Donation page where the GiveWP form is supposed to be. (And I changed the scroll parameters so you could see the entire form, but that’s a detail.)

    Here is the div that is supposed to have the iframe before the /div

    [div class=”root-data-givewp-embed” data-form-locale=”en_US” data-form-url=”https://chesapeakewomenanglers.org/?post_type=give_forms&p=5179″ data-form-view-url=”https://chesapeakewomenanglers.org?givewp-route=donation-form-view&form-id=5179″ data-src=”https://chesapeakewomenanglers.org?givewp-route=donation-form-view&form-id=5179″ data-givewp-embed-id=”give-form-shortcode-1″ data-form-format=”” data-open-form-button=”Donate now”][/div]

    Any ideas about how to fix this?

    Thread Starter Paul Hartman

    (@paul-hartman)

    Can anyone help with this? I still have 4 sites that are broken. Two of them I reverted back to GiveWP 3.22.2 and the other two I replaced the GiveWP shortcode with the iframe that is missing when you are logged out of WordPress.

    3 sites work just fine. I have checked cache, PHP versions, and various other settings and have run out of things to try.

    Here is a test page that has the GiveWP shortcode:

    https://chesapeakewomenanglers.org/test-2/

    • This reply was modified 1 month, 1 week ago by Paul Hartman. Reason: Add URL to test page
    Plugin Support Robin Joshua Del Mundo

    (@robindelmundo)

    Hi @paul-hartman ,

    Please excuse the slow turnaround here.

    I’ve seen that scenario for other websites, but it is related to one of our premium plugins.

    At this point, we’ll need to check for conflicts. This might be caused by a plugin or theme conflict. The next step would be to try our Health Check tutorial. This can allow you to test your site with different plugins without hurting the front end of your site at all — https://givewp.com/documentation/resources/troubleshoot-wordpress-websites-health-check/.

    Here is what you should do:

    Step 1: Disable Plugins

    1. In the dashboard, navigate to the “Plugins” menu on the left sidebar. You will see a list of all your installed plugins. Select the checkboxes next to the plugins you want to disable.
    2. After deactivating the plugins, visit your website to see if the issue has been resolved. If it’s fixed, the problem was likely caused by one of the plugins.

    Step 2: Enable Plugins One by One

    1. To identify the specific plugin causing the issue, re-enable your plugins one at a time.
    2. After reactivating each plugin, check your website to see when the issue reappears. This will help you pinpoint the problematic plugin.
    3. Once you identify the problematic plugin, you can leave it deactivated, update it, or seek support for a fix.

    Step 3: Troubleshoot Themes
    If the issue persists even after deactivating plugins, you may need to check if your theme is causing the problem.

    1. Go to the “Appearance” menu in your dashboard.
    2. Click on “Themes” to see the list of installed themes.

    Step 4: Activate a Default Theme

    1. Activate a default WordPress theme, like Twenty Twenty or Twenty Twenty-One. To accomplish this, click the “Activate” button on the default theme you want to use.
    2. Check your website to see if the issue is resolved. If it is, your original theme may be causing the issue.

    You can also learn more about troubleshooting using our documentation here:
    https://givewp.com/documentation/resources/how-to-troubleshoot-your-website-like-a-wordpress-support-engineer/

    Let me know if you find a conflict with another plugin or the theme.

    Thread Starter Paul Hartman

    (@paul-hartman)

    Am I the only one in the world with this problem? It started when updating from Give 3.22.2 to 4.0 (and up through 4.2.1).

    The Health Check tutorial you suggested is out of date. The plugin is now called Health Check & Troubleshooting — it has not been updated for 10 months and has not been tested with the latest version of WP. Despite my usual caution, I installed it anyway and it says I do not have a default theme installed. I do, the 2025 theme. But since the plugin has not been updated it apparently doesn’t know about that theme. I don’t have confidence in this plugin.

    The 4 sites that exhibit the issue are live sites so I don’t want to do the usual disable all plugins & switch to a default theme troubleshooting. All the sites are on lowest-tier hosting plans that allows only one website so I can’t create a staging site. I have a separate development site but I have no room for another test site because there are several new projects in progress using up all the resources. So I am limited in what I can try.

    Restating the problem: If you are logged in to WordPress, you see the donation form. If you are not logged in, the form is not visible. The reason is because the iframe that displays the form is not present. Here is a screenshot of the console errors when not logged in: https://chesapeakewomenanglers.org/wp-content/uploads/2025/05/Screenshot-2025-05-19-101509.jpg

    I disabled “Defer Render-blocking JavaScript” in the caching plugin (Siteground Speed Optimizer) and the donation form is now visible. I would really like to have that option enabled to help speed up site loading. I tried excluding these js files:

    /wp-content/plugins/give/build/assets/dist/js/give.js
    /wp-content/plugins/give/build/formEntity.js
    /wp-content/plugins/give/build/campaignEntity.js
    /wp-content/plugins/give/build/assets/dist/js/give-donation-summary.js

    That didn’t help. There is one more js file that is loaded but the plugin won’t let me exclude it for some reason:

    /wp-content/plugins/give/build/donationFormBlockApp.js

    Any ideas of what I can try besides turning off all plugins & switching to default theme?

    Plugin Support Robin Joshua Del Mundo

    (@robindelmundo)

    Hi @paul-hartman ,

    Thanks for sharing that! From our past cases, we’ve never seen the SiteGround Optimizer do that for forms, but I guess it can have different effects in optimizing your website.

    The best way to do use GiveWP alongside it is excluding GiveWP’s scripts from the optimization. You can follow my recommendations below:

    Script Compression
    Frequently, script compression/optimization causes issues with GiveWP. After you’ve also followed the caching recommendations (which you can view further down), and everything is working, turn the optimization plugin back on and exclude the following scripts from being compressed/optimized further:

    Core files:
    give.js
    give-donation-summary.js
    donor-dashboards-app.js

    You may or may not have the following on your site:
    Form Field Manager: give-ffm-frontend.js
    Tributes: give-tributes-common.min.js
    Fee Recovery: give-fee-recovery-public.min.js
    Recurring Donations: give-recurring.min.js
    Peer to Peer:
    give-p2p.js
    give-p2p-campaign-donations-overview.js
    give-p2p-fundraiser-leaderboard.js
    give-p2p-team-leaderboard.js
    give-p2p-campaign-header.js

    Caching
    Caching can also contribute to this or be the sole reason for what you’re experiencing. The fix is a bit technical, so I’ll include as much detail as possible here, but you may need to reach out to your web developer or web support person to implement the recommendations I’ll be talking about below.

    Your issue here is caused by some caching happening somewhere in the process. If you’re not familiar with caching, it’s a method of saving server resources by storing copies of a page or site. This is being done so that the next visitor’s visit doesn’t trigger a call to the server at all, they just get the copy that was saved. Basically, instead of the site needing to recreate the page from scratch, it sends up a copy which allows it to load faster.

    Caching works really well for speeding up sites, but when a saved copy of the site has sensitive information in it (like donor info) it’s important that GiveWP not share that with the next visitor. If GiveWP is not convinced that the browser requesting the data is the correct one, it defaults to not showing the data.

    Caching is handled differently on various sites and web hosts. This could mean a caching plugin, or caching could be in a security solution. Hosting providers also have settings for caching at the server level, and they can help make adjustments for you there. Most caching solutions have a setting or section for excluding specific URLs or parts of URLs (called “slugs”) from caching.

    At the very least, you should exclude the following slugs from caching:

    • /donations/
    • /donation-confirmation/
    • /donor-dashboard/
    • any page with a donation form on it

    Moreover, the following query strings (if your caching solution has a setting for them):

    • give-embed=donor-dashboard
    • giveDonationFormInIframe=1
    • givewp-route
    • give-listener=paypal-commerce
    • give-listener=ipn
    • give-listener=stripe

    We also use two cookies: give_nl and wp-give_session_{random generated hashed code unique for each visitor} that should be excluded.

    The give_nl cookie provides email access to donors to view their donation history on your site.
    The wp-give_session_ cookie is to maintain the donor session during the donation process.

    Your host or the caching plugin/solution you are using can help with that. Some of them may require what’s called a “wildcard” like /donations/* to capture all subdirectories under the /donations/ folder. Some folks prefer to customize the URLs to their site pages, so you may find that your URLs don’t have the slugs mentioned above, even though they contain the same content.

    In cases like those, we recommend whitelisting the page, not just the slug, that way the pages with those essential pieces of information are still excluded from caching. This is especially important for URLs of pages with donation forms on them.

    One helpful tip: Check in with your hosting provider. Most hosts have caching at the server level, and they will be able to adjust this for you. You can also temporarily disable caching on the site to confirm that the uncached site isn’t showing the problem.

    While fine-tuning cache falls outside the scope of the support we’re able to provide, your success with online donations is our number one priority, and we’re happy to provide any tips.

    We put together this deep dive into what caching is and how it can cause difficulties: https://givewp.com/documentation/resources/caching/.

    Please let me know once you’ve implemented the above and see if the issue persists.

    Meanwhile, I’m here for further questions or other concerns.

    I’m always happy to help!

    Plugin Support Robin Joshua Del Mundo

    (@robindelmundo)

    Hi @paul-hartman ,

    It’s been a while since we’ve heard back, and I know troubleshooting needs a little extra time. I’m marking this as resolved for now, but if you still have questions, you can send them along right here, and I’ll be happy to hop back in.

    Have a great day!

    Thread Starter Paul Hartman

    (@paul-hartman)

    No, the issue is not resolved. I haven’t had time to work on this until now.

    None of the suggestions worked. The ONLY thing that fixes it is turning off “Defer Render-blocking JavaScript” in Siteground’s Speed Optimizer plugin. I would prefer to keep that turned on.

    The problem did not exist with Give 3.22.2 and older versions, it was the update to 4.0 (and newer) when this problem arose.

    Here is a page that doesn’t work unless you are logged in to WordPress:
    https://chesapeakewomenanglers.org/test-2/

    Here is a page that works whether logged in or not because I added the missing iframe into a code block rather than use the give_form shortcode:
    https://chesapeakewomenanglers.org/donation/

    I have tried excluding Give Javascript files from Deferral of Render-blocking JS, and that didn’t help. (formEntity.js, campaignEntity.js, give.js, give-donation-summary.js). The Speed Optimizer plugin does not show any other Give JS files as options to exclude (you have to pick from a list).

    I excluded Give URLs from caching, including pages with forms on them. Didn’t help.

    There is no CSS/JS minification. (Just HTML.)

    Combine CSS files is turned on, but turning that off didn’t help.

    I guess I will have to turn off Defer Render-blocking JS. That’s annoying to have to do that.

Viewing 12 replies - 1 through 12 (of 12 total)
  • You must be logged in to reply to this topic.