Discourseへの投稿公開時に致命的なエラーが発生

最新の Discourse および WP Discourse WordPress プラグインを使用しているところ、投稿を Discourse に公開しようとした際に以下のエラーが発生しました:

An error of type E_ERROR was caused in line 207 of the file /www/sociocracyforall_679/public/wp-content/themes/Divi/includes/builder/feature/gutenberg/blocks/Layout.php. Error message: Uncaught ArgumentCountError: Too few arguments to function ET_GB_Block_Layout::get_the_excerpt(), 1 passed in /www/sociocracyforall_679/public/wp-includes/class-wp-hook.php on line 303 and exactly 2 expected in /www/sociocracyforall_679/public/wp-content/themes/Divi/includes/builder/feature/gutenberg/blocks/Layout.php:207
Stack trace:
#0 /www/sociocracyforall_679/public/wp-includes/class-wp-hook.php(303): ET_GB_Block_Layout->get_the_excerpt('It was yet anot...')
#1 /www/sociocracyforall_679/public/wp-includes/plugin.php(189): WP_Hook->apply_filters('It was yet anot...', Array)
#2 /www/sociocracyforall_679/public/wp-content/plugins/wp-discourse/lib/discourse-publish.php(271): apply_filters('get_the_excerpt', 'It was yet anot...')
#3 /www/sociocracyforall_679/public/wp-content/plugins/wp-discourse/lib/discourse-publish.php(209): WPDiscourse\DiscoursePublish\DiscoursePublish->sync_to_discourse_work(32452, 'The day I conse...', '

バージョン間の引数変更によるバグのようですが、いかがでしょうか?

こんにちは CJ さん、エラーは Divi プラグイン、あるいはその拡張機能のいずれかに起因しているようです。

確かに、ET_GB_Block_Layout を Google で検索すると、他の多くのサイトでも同様の問題が発生していることがわかります(多くの場合、Google による HTML のスクレイピング結果に含まれています)。プラグインの最新バージョンを実行しているか確認し、必要に応じて Elegant Themes にこの問題を報告してください。

スタックトレースのさらに下側に WP Discourse のコードが表示されているのは(これは通常、問題の発生源ではないことを意味します)、公開ボタンをクリックすると、相互に関連した形で公開後のコードが実行されるためです。

公開後に例外が発生した場合、その発生源が何であれ、wp-discourse プラグインのコードがスタックトレースのどこかに現れる可能性が高いです。ただし、それが問題の発生源であることを意味するわけではありません。

Divi が有効になっている場合のみ発生します。

修正されることを願っています :slight_smile:

参考のための完全なスタックトレース:

ArgumentCountError: 未処理の例外 'ArgumentCountError' で、メッセージ '関数 ET_GB_Block_Layout::get_the_excerpt() への引数が不足しています。/www/sociocracyforall_679/public/wp-includes/class-wp-hook.php の 303 行目で 1 つ渡されましたが、正確に 2 つ必要です' が発生しました。ファイル:/www/sociocracyforall_679/public/wp-content/themes/Divi/includes/builder/feature/gutenberg/blocks/Layout.php:207
in ET_GB_Block_Layout::get_the_excerpt called at /www/sociocracyforall_679/public/wp-includes/class-wp-hook.php (303)
in WP_Hook::apply_filters called at /www/sociocracyforall_679/public/wp-includes/plugin.php (189)
in apply_filters called at /www/sociocracyforall_679/public/wp-content/plugins/wp-discourse/lib/discourse-publish.php (271)
in WPDiscourse\\DiscoursePublish\\DiscoursePublish::sync_to_discourse_work called at /www/sociocracyforall_679/public/wp-content/plugins/wp-discourse/lib/discourse-publish.php (209)
in WPDiscourse\\DiscoursePublish\\DiscoursePublish::sync_to_discourse called at /www/sociocracyforall_679/public/wp-content/plugins/wp-discourse/lib/discourse-publish.php (158)
in WPDiscourse\\DiscoursePublish\\DiscoursePublish::publish_post_after_save called at /www/sociocracyforall_679/public/wp-includes/class-wp-hook.php (305)
in WP_Hook::apply_filters called at /www/sociocracyforall_679/public/wp-includes/class-wp-hook.php (327)
in WP_Hook::do_action called at /www/sociocracyforall_679/public/wp-includes/plugin.php (470)
in do_action called at /www/sociocracyforall_679/public/wp-includes/post.php (5180)
in wp_after_insert_post called at /www/sociocracyforall_679/public/wp-includes/post.php (4482)
in wp_insert_post called at /www/sociocracyforall_679/public/wp-includes/post.php (4570)
in wp_update_post called at /www/sociocracyforall_679/public/wp-admin/includes/post.php (423)
in edit_post called at /www/sociocracyforall_679/public/wp-admin/post.php (227)