埋め込み投稿:ReactサイトからCSSセレクターを読み取れない

コンテンツにCSSタグがあり、埋め込み管理設定でCSSセレクターを特定しましたが、クローラーで認識されていません。サイトがReactで構築されており、CSSセレクターにアクセスできないためだと考えられます。Reactサイトでこの機能を使用するにはどうすればよいですか?

その可能性はありますが、Discourseがサイトに対して行うリクエストはHTMLを返すことを想定しています。確認すべきもう一つの点は、Discourseが外部サイトから取得したコンテンツを10分間キャッシュするということです。つまり、「許可された埋め込みセレクタ」サイト設定を調整した場合、新しい設定値の結果を確認するには最大10分待つ必要があります。

Discourseサイトがまだ本番環境に投入されておらず、Railsコンソールにアクセスできる場合は、Rails.cache.clearコマンドでコンソールからキャッシュをクリアできます。

この設定に関する追加の詳細はこちらにあります:https://meta.discourse.org/t/configure-the-allowed-embed-selectors-setting/134481/1。

追記:私は、埋め込み機能が期待通りに動作していると思います。単に、一部のサイトでは設定が難しいだけです。このトピックを#supportに移動させます。

数ヶ月前に、Discourseが埋め込まれた投稿をより良い方法で解析すべきだという提案で、#contribute:featureトピックを作成しましたhttps://meta.discourse.org/t/topic-embedding-needs-some-love/262763。誰かが先に着手しない限り、近々この件に取り組む予定です。

Discourse はクローラーに異なるビューを表示します。表示するには、JavaScript をオフにしてアクセスする必要があります。

埋め込み投稿は、埋め込まれたサイトに存在しないため、クロールされるとは思いません。

こんにちは。埋め込み投稿機能でDiscourseが私のReactサイトをクロールする方法についてお尋ねします。Reactページの見え方 때문에 Discourseの投稿に含めるコンテンツを伝えるのに苦労しています。

参考になれば、外部投稿を取得するために使用されるコードはこちらです: discourse/app/models/topic_embed.rb at main · discourse/discourse · GitHub

サイトのRailsコンソールにアクセスできる場合は、それでアイデアを得るためにテストできます。たとえば:

TopicEmbed.find_remote("https://blog.discourse.org/2023/04/introducing-discourse-ai/")

問題が発生したのは、find_remoteメソッドの最後に呼び出されるparse_htmlメソッドです。Ruby Readabilityは一部のHTML/CSSで苦労します。

ReactサイトからHTMLが返されていない可能性もあります。コンソールからfind_remoteメソッド内のコードを段階的に実行することで確認できます。

これは素晴らしいです、ありがとうございます!