This error occurs most often on the Thank You or payment return page of Paypal Pro transactions and is usually caused by your Paypal configuration. If you are experiencing errors with slurping Mijireh checkout pages, see this article.

Warning: array_merge(): Argument #1 is not an array in path/themes/yourtheme/ocmx/theme-setup/custom.php on line 523

This error can also occur on contact forms or other custom forms and is due to missing information in the form configuration such as meta key values, email addresses or other server-side configurations.

The Solution

WooCommerce: Verify Paypal IPN and Paypal payment settings in WooCommerce

Ensure your Paypal account setup coincides with the recommended settings described here.

If you are using Paypal Pro, see additional documentation here.

Specifically, ensure Payment Data Transfer (PDT) is disabled. Click here for detailed steps on finding this setting.

Verify Caching

WooCommerce requires any caching plugins or functionality at your host to be explicitly compatible with eCommerce sites. This is due to how cookies and sessions work for shoppers to allow things like the cart to work.

  1. Ensure no caching is enabled at the host level, such as Pagespeed or Cloudflare. If so, clear it, disable it, and replace it with a WordPress approved plugin.
  2. If using caching plugins, ensure they are compatible with WooCommerce. See Configuring caching plugins

Custom Forms / Form Plugins

If you are building a custom solution that is trying to insert posts into the database, you need to ensure all of the meta fields are accounted for which exist in the post type options. To view these custom field names, enable Custom Fields on the post editor.

For plugins like contact forms, make sure you have configured the plugin/form with the correct email address and form validation data as required by the plugin.

See also Fatal error: Call to undefined function post_meta_update() in custom.php