- Stato
- Risolto dall’autore
- Plugin/tema correlato
- Royal Elementor Addons
- Tag dell’argomento
- Compatibility
Panoramica del problema
Gli utenti del plugin Royal Elementor Addons potrebbero riscontrare un messaggio di errore relativo a una funzione deprecata quando utilizzano le versioni PHP 8.1 e successive:
Deprecated: urldecode(): Passing null to parameter #1 ($string) of type string is deprecated in .../wp-includes/post.php on line 5864
Soluzione alternativa
Assicurati di avere un backup completo del sito prima di procedere.
- Apri il file …/wp-content/plugins/royal-elementor-addons/classes/utilities.php.
- Cerca la riga 396.
- Sostituisci:
// tmp remove after 2 months $templates_loop = new \WP_Query([ 'post_type' => 'wpr_templates', 'name' => $template, 'posts_per_page' => 1, ]); if ( ! $templates_loop->have_posts() ) { if ( defined('ICL_LANGUAGE_CODE') ) { $original_post = get_page_by_path($template, OBJECT, 'wpr_templates'); if ( $original_post ) { $original_post_id = $original_post->ID; $language_code = ICL_LANGUAGE_CODE; $translated_post_id = icl_object_id($original_post_id, 'wpr_templates', false, $language_code); if ( $translated_post_id ) { $translated_post = get_post($translated_post_id); $translated_slug = $translated_post->post_name; if ( $translated_slug ) { $template = $translated_slug; } else { $template = null; } } } } else { $template = null; } } else { $template = $template; } - Con:
// Ensure template is not null or empty before querying the database // compsupp-7576 fix if (!empty($template)) { // tmp remove after 2 months $templates_loop = new \WP_Query([ 'post_type' => 'wpr_templates', 'name' => $template, 'posts_per_page' => 1, ]); if ( ! $templates_loop->have_posts() ) { if ( defined('ICL_LANGUAGE_CODE') ) { $original_post = get_page_by_path($template, OBJECT, 'wpr_templates'); if ( $original_post ) { $original_post_id = $original_post->ID; $language_code = ICL_LANGUAGE_CODE; $translated_post_id = icl_object_id($original_post_id, 'wpr_templates', false, $language_code); if ( $translated_post_id ) { $translated_post = get_post($translated_post_id); $translated_slug = $translated_post->post_name; if ( $translated_slug ) { $template = $translated_slug; } else { $template = null; } } } } else { $template = null; } } else { $template = $template; } } // compsupp-7576 fix