• Resolved danakaplan7

    (@danakaplan7)


    I am a Firefighter, not a computer expert, but I’ve been able to run my Krav Maga San Diego website for years with a little help. We can’t open registration for our upcoming womens seminar: Whoever fills out our form sees an error message: “There has been a critical error on this website.” They are NOT taken to the PayPal page. We DO get the registration form by email. But they can’t pay. And we can’t open registration today (8 hours on the computer and phone with Bluehost). They updated my PHP from 7.4 to 8.3. Then they said CP Contact Form with PayPal was incompatible with PHP 8.3. They reverted me to PHP 7.4. It still wouldn’t work. I asked them to revert me to 8.3, they did. Still wouldn’t work. They sent me error message which they said ‘proves’ it’s the plugin CP Contact Form with PayPal, not anything else. Here is the error message:

    [02-Aug-2025 01:43:37 UTC] PHP Fatal error: Uncaught TypeError: str_replace(): Argument #2 ($replace) must be of type string when argument #1 ($search) is a string in /home3/kravmai1/public_html/wp-content/plugins/cp-contact-form-with-paypal/cp_contactformpp.php:1601
    Stack trace: 0 /home3/kravmai1/public_html/wp-content/plugins/cp-contact-form-with-paypal/cp_contactformpp.php(1601): str_replace(‘<%fieldname9%>’, Array, ‘http://wp.me/P6…&#8217;) 1 /home3/kravmai1/public_html/wp-content/plugins/cp-contact-form-with-paypal/cp_contactformpp.php(1211): cp_contactformpp_replace_params(‘http://wp.me/P6…&#8217;, Array) 2 /home3/kravmai1/public_html/wp-includes/class-wp-hook.php(324): cp_contact_form_paypal_check_posted_data(”) 3 /home3/kravmai1/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) 4 /home3/kravmai1/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) 5 /home3/kravmai1/public_html/wp-settings.php(704): do_action(‘init’) 6 /home3/kravmai1/public_html/wp-config.php(103): require_once(‘/home3/kravmai1…’) 7 /home3/kravmai1/public_html/wp-load.php(50): require_once(‘/home3/kravmai1…’) 8 /home3/kravmai1/public_html/wp-blog-header.php(13): require_once(‘/home3/kravmai1…’) 9 /home3/kravmai1/public_html/index.php(17): require(‘/home3/kravmai1…’) 10 {main}

    thrown in /home3/kravmai1/public_html/wp-content/plugins/cp-contact-form-with-paypal/cp_contactformpp.php on line 160

    6:46 PM
    Business said
    This is the full error

    6:46 PM
    Business said
    You can clearly see the error in the line of code of this plugin

    6:47 PM
    New message Business said You can clearly see the error in the line of code of this plugin 6:47 PM9b10fd5317c05baf9e0d3735c530c48d

    Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the eleven40 domain
    was triggered too early. This is usually an indicator for some code in the plugin or theme running too early.
    Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information.
    (This message was added in version 6.7.0.) in /home3/kravmai1/public_html/wp-includes/functions.php on line 6114

    Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in
    /home3/kravmai1/public_html/wp-content/plugins/cp-contact-form-with-paypal/cp_contactformpp.php on line 869

    There has been a critical error on this website.

    Learn more about troubleshooting WordPress.

    Can anyone help?

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

Viewing 7 replies - 1 through 7 (of 7 total)
  • Thread Starter danakaplan7

    (@danakaplan7)

    I’m starting to think that maybe cp contact form with paypal is not compatible with PHP 8.3. Any ideas?

    Thank you.

    Plugin Author codepeople

    (@codepeople)

    Hi,

    Your website has installed an outdated version of the plugin. Please update to the latest version to keep it compatible with PHP 8.x.

    Thank you for using the plugin!

    Thread Starter danakaplan7

    (@danakaplan7)

    Hi,

    That’s strange, I have autoupdates enabled in my dashboard – plugins. I’m too worried to try this now, I don’t want to break the form, as we are opening registration today, and I’ve reverted to PHP 7.4 and it’s working, so I’ll do this soon. 

    But, I searched online how to update the plugin, it says to download the latest version from wordpress.org (I did, it’s on my desktop), deactivate the current version (I can do that), but then it says, 

    • Delete the existing plugin folder from your /wp-content/plugins/ directory via FTP or your hosting’s file manager.

    I went into the Bluehost cpanel and searched for “wp-content/plugins/” but it says, “no records found”. Now what?

    Thank you,

    Dana

    BluehostSupport

    (@bluehostsupport)

    Yeah that error is exactly what it looks like. str_replace() expects a string but the plugin is sending it an array. That mismatch is what’s breaking the redirect to PayPal. It’s a PHP 8 issue but the plugin dev is right that updating should fix it since newer versions usually patch this kind of thing.

    If you can’t find the plugin folder in File Manager, go into public_html, then open the folder for your site, then wp-content, then plugins. If you still don’t see it, skip the search bar and just navigate manually. Search in File Manager isn’t super reliable.

    You’re doing the right thing holding off until registration calms down. Once it does, updating that plugin should sort this out cleanly.

    Thread Starter danakaplan7

    (@danakaplan7)

    Thanks, I followed your advice. I went to Cpanel, public_html, wp-content, plugins, and there is a folder: cp-contact-form-with-paypal. I assume that I should first deactivate the plugin from my Dashboard in WordPress; then delete the entire folder from that spot in the Cpanel. Then install and activate the updated CP Contact Form with PayPal. I’ll have to figure out how to install the plugin. I’ve downloaded it to my desktop, extracted all. From the README.txt file, I will have to figure out: “2. Upload the entire cp-contact-form-with-paypal/ directory to the /wp-content/plugins/ directory”. I’ve never done that. My other big concern is that I don’t want to lose my 75 or so existing forms. I read online that there is a way to update the plugin version without losing them, but I’ll have to do more research on that. I don’t know how or where to back up those forms.

    Yes, definitely not going to fix what’s not broken at this time.

    Plugin Author codepeople

    (@codepeople)

    Hi,

    Your website has installed an outdated version of the commercial plugin, for this reason you cannot update it from the WordPress directory (the WordPress directory contains the free version that has a different version number).

    You have answers sent from our support system about updating the commercial version (tickets #441521 and #576564), these answers contains the update instructions for the version of the plugin you have. Updating the plugin will correct the problem since the latest version is fully compatible with PHP 8.x.

    For pro or commercial product support please contact us directly on our site. This includes any pre-sales topics as well. Commercial products are not supported in these forums. We will happily answer this and any other questions you can have on our own site.

    Thank you for using the plugin!

    Thread Starter danakaplan7

    (@danakaplan7)

    OK, will do, thank you.

Viewing 7 replies - 1 through 7 (of 7 total)

The topic ‘“There has been a critical error on this website.”’ is closed to new replies.