ajaxコメントの設定に関する問題

スクリーンショット:






ログの繰り返しエラーの抜粋はこちらです:

[2022-04-16 00:08:52] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:06] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:08] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:50] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"}

新しい投稿を作成すると機能し、トピックが作成されます。しかし、Discourseでコメントが作成されても、WordPressには同期されません。

上記の設定をご覧の通り、あまり変更していません。何か間違っている点や見落としている点はありますか?

こちらのガイドに従いました:

編集:
フォーラムで同じエラーが発生しています。検索結果はこれだけでした
comment_formatter.ERROR: format.missing_post_data

これは既知の問題ですか?それとも解決できますか?

「いいね!」 1

こんにちは。

  1. 可能であれば、問題が発生しているWordPressサイトの投稿へのリンクを教えていただけますでしょうか?
  2. Ajaxコメントを使用されている理由は何でしょうか?(「Ajaxでコメントを読み込む」にチェックが入っています。)
「いいね!」 1

アンガス様

  1. はい、承知いたしました:60 Linux Networking commands and scripts (現時点では同期されている投稿はこれのみです)
  2. Ajaxは、何時間も問題が完全に解決しない場合の最終手段としてのみ確認しました。現在、Ajaxのチェックを外しました。Webhookがない場合、同期の間隔に時間がかかったと推測されます。

現在は機能しているようですが、フォーマットが少し洗練されていません。CSSを調べる必要があると推測されますか?

また、古いWordPressの投稿に対して、「ディスカッションに参加する」タイプのリンクをDiscourseフォーラムのホームページに表示する方法はありますか?言い換えれば、投稿にコメントがない場合、または投稿が以前にDiscourseに同期されていない場合、プラグインは空白のままにする代わりに、私のDiscourseフォーラムのホームページへの一般的なリンクを追加しますか?

ご協力いただき、誠にありがとうございます。

「いいね!」 1

はい、表示方法はテーマによって異なります。プラグイン自体には最小限のスタイルしかありません。

ディスカッションに参加するリンクは、リンクされていないトピックには表示されません。ただし、テーマのfunctions.phpファイルでcomments_templateフィルターを使用して、プラグインとは別に自分で追加することができます。このコードはテストしていませんが、次のようなものが機能するはずです。

use WPDiscourse\Utilities\Utilities as DiscourseUtilities;

function non_discourse_comments_template( $comment_template ) {
   global $post;
   $post_id = $post->ID;
   $discourse_post_id = get_post_meta( $post_id, 'discourse_post_id', true );

   if ($discourse_post_id) {
     return;
   } else {
     $options = DiscourseUtilities::get_options();
     $discourse_permalink = $options['url'];
     $link_text = "Join the Discussion";
     return '<div class="wpdc-join-discussion"><a class="wpdc-join-discussion-link" href="' . esc_url_raw( $discourse_permalink ) . '" target="_blank" rel="noreferrer noopener">' . esc_html( $link_text ) . '</a></div>';
   }
}
add_filter( "comments_template", "non_discourse_comments_template" );
「いいね!」 2

4件の投稿が新しいトピックに分割されました: ログでのコメントフォーマッターエラー

追加のヘルプとガイダンスをありがとうございました!

レイアウトを少しでも改善するために貼り付けるCSSを読んだり検索したりしていました。

しかし、CSS/スタイリングに慣れていない(既存のCSSを貼り付ける以外は)ため、インポートされたコメントのスタイリングに非常に基本的な変更を加えたいと考えています。具体的には、コメント内のディスコースユーザー名の横にあるアバター画像を小さくし、投稿間に水平線を追加したいと考えています。
image

これは、/admin/customize/themes/1/common/scss/edit にコードを貼り付けるだけで簡単にできることでしょうか?

編集:
他の人のために、ここでコードを使用してグラバターのリサイズを解決できました。

「いいね!」 2

コメントのスタイルを設定できました。私のスタイルはとても基本的でしたが、改善されました。

残っているのは、WP-Discourseインポートされたコメントセクションの下部にある参加者リストを削除することだけです。

「self」を使用しているためエラーが発生するため、このコードを使用できません。回避策はありますか?

ob_start();
?>
<div id="comments" class="comments-area discourse-comments-area">
<div class="comments-title-wrap">
<h2 class="comments-title discourse-comments-title"><?php echo esc_html( self::get_text_options( 'notable-replies-text' ) ); ?></h2>
</div>
<ol class="comment-list">{comments}</ol>
<div class="respond comment-respond">
<h3 id="reply-title" class="comment-reply-title">
<?php echo esc_html( self::get_text_options( 'continue-discussion-text' ) . ' ' ); ?>
<?php self::discourse_topic_link( self::new_tab() ); ?>
</h3>
<p class="more-replies">{more_replies}</p>
</div>
</div>
<?php
$output = ob_get_clean();

これらの行を削除しました。

<div class="comment-reply-title">
<h4 class="discourse-participants"><?php echo esc_html( self::get_text_options( 'participants-text' ) ); ?></h4>
<p>{participants}</p>
</div>

しかし、「self」の構文エラーの解決方法がわかりません。特にこれらの行についてです。

<?php echo esc_html( self::get_text_options( 'continue-discussion-text' ) . ' ' ); ?>
<?php self::discourse_topic_link( self::new_tab() ); ?>

参加者セクションを削除しませんでした。もし削除を考えているなら、他のDiscourseの機能と同様に、開発者が熟考して作成した機能ですので、試してみてください。15件の投稿のうち5件がインポートされた後でも、すべての参加者が表示されます。(変更可能な設定です)また、インポートされた返信では、レベル0のフォーラムメンバーの投稿は除外されます。これは役立つと思います。

要するに、時間の経過とともに、参加者リストとインポートされたコメントが常に同一であるとは限らないことに気づきました。多くの場合、すべての投稿をインポートしたり、最初に登録したメンバーからの投稿をインポートするリスクを冒したりすることなく、ブログの読者にコメントのアクティビティレベルをより正確に表示するのに役立ちます。(これも設定で変更できると思います)

「いいね!」 2

comment_formatter.ERROR: format.missing_post_data の報告が過剰になっていると思います。次のリリースで調整します。ご連絡いただきありがとうございます。目に見える問題が発生していない限り、現時点では心配しないでください。

コメントのスタイリングに関する正式なガイドはありません。他のトピックがいくつかあります。たとえば、こちらなどです。WordPressのテーマは非常に多くの形状とサイズがあるため、当初はサイト管理者に任せることが考えられていました。とはいえ、追加のガイドが役立つかもしれません。

WP Discourseガイドに追加するリストに入れました。数週間後に公開しますが、それまでの間にスタイリングで困ったことがあればお知らせください。いくつかヒントを提供します。

「いいね!」 2

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.