下のスクリーンショットをご覧いただくと、WordPress 上でフラグが立てられ非表示になった投稿が表示されていることがお分かりいただけると思います。また、実際には参加していない人数が議論に参加している人としてリストアップされています。これらはトピック内で「囁き(whisper)」を行った人々です。
私は wp-discourse プラグインの古いバージョンを使用していますが、それが問題の原因かどうかはわかりません。いずれにせよ、これは Discourse 側で対応すべき問題のように思われます。つまり、非表示の投稿や囁きを行った投稿者の情報が API を通じて公開されないようにすべきです。
WordPress での表示は以下の通りです:
Discourse での表示は以下の通りです:
余談ですが、言及された6人全員が投稿に「いいね」をしたことに気づきました。そのうち3人は囁き会話にも参加していますが、ハートマークをつけています。もしかすると、囁きユーザーのアバターはWordPressのコメント経由では漏れていないのかもしれません。
simon
2019 年 8 月 21 日午後 6:26
3
ご報告ありがとうございます。2 つの別々の問題が確認されています。
1 つ目の問題は、TopicViewWordpressSerializer が非表示の投稿を返している点です。非表示の投稿を返さないようにするか、Discourse から返されるデータに hidden プロパティを追加する必要があります。これにより、プラグインが非表示の投稿を処理できるようになります。
2 つ目の問題は、Discourse が返すトピックの参加者リストが、リクエストを送信したユーザーが見られる参加者に基づいて設定されている点です。プラグインは管理者ユーザーとして Discourse のトピックをリクエストしているため、トピック内で囁き投稿を作成したスタッフユーザーが参加者リストに含まれています。この件については、さらに調査が必要です。
Wordpress 側でそれらの hidden 投稿を表示する必要があることはありますか?もし不要なら、それらを転送するのは無駄のように思えます。
simon
2019 年 8 月 23 日午後 6:32
5
非表示の投稿は、WordPress ルートから返される投稿リストから除外されています。Discourse の最新バージョンをお使いの場合、WordPress のコメント欄には非表示の投稿は表示されなくなります。
参加者セクションの問題は、対処がより複雑です。返される参加者リストは、Discourse コメントの API リクエストがどのユーザー名で送信されたかに依存します。プラグインの「接続設定」で「全ユーザー」の API 認証情報を使用していると仮定すると、参加者リストには「ひそか」を投稿したユーザーも含まれます。
今後、プラグインにオプションを追加し、コメントエリアから参加者セクションを除外できるようにする予定です。現在使用中の WP Discourse プラグインのバージョンを更新できない場合は、replies_html テンプレートをカスタマイズすることで、参加者セクションを削除することもできます。