Open
Reported for: WooCommerce Multilingual & Multicurrency 5.1.2
Overview of the issue
When using the PayZen for WooCommerce plugin, WooCommerce orders are not visible in the Dashboard and the following PHP error appears:
PHP Fatal error: Uncaught TypeError: md5(): Argument #1 ($string) must be of type string, array given in …wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:210
Workaround
Please, make sure of having a full backup of your site before proceeding.
Open your theme’s functions.php file and add this code:
add_filter( 'option_woocommerce_payzenstd_settings', function( $settings ) { $locale = get_locale(); foreach ( [ 'title', 'description' ] as $key ) { if ( is_array( $settings[ $key ] ) ) { $settings[ $key ] = isset( $settings[ $key ][ $locale ] ) ? $settings[ $key ][ $locale ] : $settings[ $key ]['en_US']; } } return $settings; } );