最新ページでDiscourseのコメントが表示されない

こんにちは、

奇妙な問題に遭遇しており、何が起きているのか分かりません。

漫画のページのいずれかを Discourse トピックにリンクすると、Discourse のコメントが常に表示されます。しかし、何らかの奇妙な理由で、現在のページではそれが機能していません。

これが Discourse トピックです。

これまで投稿した数十ページで行ってきたことと全く同じことをしているつもりなのですが。

リンクを外して再度リンクし直してみましたが、このページでは Discourse のコメントが表示されません。(ただし、以前のページではまだ表示されており、更新もされているようです。)

ユーザー側のミスである可能性も常にあります。どこかで何か間違えているのでしょうか?

ご助力いただければ大変感謝いたします。ありがとうございます!

これは、以前私が経験した問題と少し似ています。コメント数が正しく表示されず(時にはゼロになる)ことがありました。実際のコメントは表示していません。あなたのケースでは、数が9と表示されていますが、コメントは表示されていません。

ユーザーエラーではないようです。投稿の下に「コメントは利用できません」というテンプレートが表示されています。WordPress の投稿編集画面に移動し、カスタムフィールドを有効にしてください。新しいブロックエディターを使用している場合は、サイドバーの「オプション」リンクをクリックしてカスタムフィールドを有効にします。

discourse_comments_rawdiscourse_permalink の両方のカスタムフィールドに値が設定されているか確認してください。

Simon さん、迅速かつ有益なご返信をいただき、ありがとうございます。そのページの「カスタムフィールド」で確認しているのは以下の通りです(discourse_comments_raw フィールドは確認できないようですが)。

その他必要なものがございましたら、お知らせください。

ありがとうございます!明日、この件について詳しく確認します。

なぜこの投稿で discourse_comments_raw カスタムフィールドが設定されないのか、理由がわかりません。この投稿が公開された後に、あなたのサイトで Discourse に公開された投稿はありますか?WP Discourse の接続設定タブを確認し、「Discourse に接続されています」という通知が表示されているか確認してください。

やあ、サイモン!

私の「接続設定」タブには以下のように表示されています。

問題のあるページの次となるページは今夜公開予定です(実際にはすでにロック解除済みです)。これで問題が継続するかどうか確認できます。

これが要因かどうかはわかりませんが、私は少し特別なことをしています。それは、一般読者にネタバレさせずに、パトロンが事前に「プレビューページ」でコメントできるようにしている点です。この機能こそが、私が Discourse インストールを選択した大きな理由です。

私が行っている手順を以下に示します(週2回の更新を1年以上続けており、これまで問題なく機能していました)。

  1. まず、パトロン向けに漫画ページを投稿します。これはウェブコミックサイト上でロックされています。例えば、これが現在のパトロン向けのロック済み「プレビューページ」で、今夜一般読者にロック解除する予定のものです。
  1. そのプレビューページを投稿するのと同時に、WP-Discourse プラグインを使用して、Discourse メタボックスを通じて、Discourse コミュニティ内の「パトロン専用カテゴリ」(「スニークプレビューページ」)に、そのページに関連付けられたトピックを作成します。

このパトロン専用カテゴリにおいて、パトロンはプレビューページにコメントできますが、その時点では一般の読者はそのコメントを見ることはできません。

  1. 一般の読者がプレビューページ上のコメントを見られないようにするため、プレビューページを投稿した後、そのページの Discourse メタボックスで「Discourse から投稿のリンク解除」をクリックし、更新します。

  2. 約3日後、プレビューページを一般公開にロック解除し、そのページの Discourse トピックをパトロン専用の「スニークプレビューページ」カテゴリから、ロック解除済みの「ページ更新」カテゴリへ移動させます。その際、WordPress 上のそのページの Discourse メタボックスで「既存のトピックにリンク」をクリックし、パトロンがそのページにコメントするために使用していた Discourse URL を入力して更新します。

これにより、一般の読者は、パトロンがロックされていた時期にそのページで行ったコメントを見ることができるようになります。つまり、パトロンはすべての公開ページに対して最初に意見を述べることができますが、ページがロック解除されるまでネタバレは起こりません。

現在話しているページ(29 ページ)は、私のサイト上で最も最近ロック解除されたページです。今夜、次のページ(30 ページ)をロック解除する予定です。

これで意味が通じることを願っています。複雑に聞こえるかもしれませんが、これは私が1年以上続けており、これまで問題なく機能してきた方法です。しかし、これが要因である可能性もあるため、念のためお知らせしました。

他に何かお手伝いできることがあれば、お知らせください。

ありがとうございます!

アレックス

それは少し複雑ですが、どこでプロセスが失敗しているのか見当たりません。次のページをアンロックした後の状況を教えてください。

次のページをアンロックしました。Discourse のコメントは正常に表示されています:

しかし、前のページではまだ表示されません…

何が違うのかわかりません…

Discourse への投稿のリンクを解除してから再リンクしても問題が解決しないのは不思議ですね。Discourse のトピックから投稿のリンクを解除すると、投稿と Discourse を関連付けるすべてのデータが削除されます。もう一度、投稿のリンクを解除してから再リンクしてみてください。その結果を教えてください。

こんにちは、サイモンさん。

投稿の「いいね」を解除し、リンクが外れたことを確認しました。

その後、再度リンクを設定しました。

すべてのキャッシュをクリアしましたが、Discourse の投稿は表示されません。

メタデータは以下の通りです。

参考までに、Discourse のコメントが表示されている次のページのメタデータも記載します。

これで何か手がかりになりますか?他にテストすべきことはありますか?

ありがとうございます!はい、確かに役立ちました。ページにアクセスすると discourse_comments_raw メタデータが設定されるはずですが、それが行われていません。問題を再現できるよう試みます。

WordPress サイトでキャッシュプラグインを使用していますか?もしそうなら、そのページのキャッシュをクリアしてみてください。

役に立てて嬉しいです。私は W3TC を使用しています。

アップデートのたびに、すべてのキャッシュをクリアしています。

今も再度クリアしましたが、残念ながら変化は見られません。

ご支援いただきありがとうございます!

Alex

なぜこのトピックのコメントを取得できないのか、私にはまだよくわかりません。

プラグインの「Cache Comment HTML」オプションが有効になっているか確認してください。これは「Commenting」設定タブの下部にあります。この設定が原因ではないはずですが、もし有効になっている場合は、問題を単純化するために無効にしてみてください。

「Sync Comment Data」設定(「Webhooks」タブにあります)を有効にしていますか?もしそうであれば、一時的にその設定を無効にしてページをリフレッシュしてみてください。

上記のいずれかで問題が解決しない場合は、「Commenting」設定タブにあるいくつかの設定値をお知らせください。影響を及ぼす可能性があるのは、「Max Visible Comments」で始まり「Only import moderator liked」で終わる設定です。これらの値は、コメントを取得するリクエストと共に Discourse に渡されます。

WP Discourse のコードに変更を加えたり、サイトのテーマを通じてプラグインのフィルターにフックしたりしましたか?