- ステータス
- 開発者により解決済み
- 関連するプラグイン/テーマ
- Royal Elementor Addons
- トピックタグ
- Compatibility
問題の概要
Royal Elementor Addonsプラグインのユーザーは、新しいPHPバージョン8.1以降の環境で動作している場合、非推奨関数のエラーメッセージが表示されることがあります:
Deprecated: urldecode(): Passing null to parameter #1 ($string) of type string is deprecated in .../wp-includes/post.php on line 5864
回避策
続行する前に、必ずサイトの完全なバックアップを取得してください。
- …/wp-content/plugins/royal-elementor-addons/classes/utilities.phpファイルを開きます。
- 396行目を探します。
- 変更前:
// 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; } - 変更後:
// 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