ABC News は説明が欠落しているためワンボックス化されません

このリンクは私のサイトで「ワンボックシング」されていません。

ふむ、ここにも表示されていないようです。ABCニュースには(予想通り)Facebook や Twitter の OG タグを含む無数のオープングラフタグが設定されています。これはバグでしょうか?それとも、Discourse のワンボックス機能でそのメタデータから収集できるものが何もないのでしょうか?:wink:

ありがとうございます!

一般的な原因の2つは、Open Graph タグの欠如、または Discourse ユーザーエージェントやクラウドプロバイダーの IP 範囲をブロックする何らかの要因です。ブラウザ上ではタグが表示されても、サーバー側では必ずしも表示されるとは限りません。

VPS から cURL を使って少し試してみれば、原因を特定できることがほとんどです。

ページの Open Graph / oEmbed タグのトラブルシューティングには iframely ツール を使用してください。どのようなテキスト説明も欠落していることは、私が現場で時折目にする別の理由です。

ふむ、わかったかもしれません…「description」フィールドが欠けているのかもしれませんね?

大手サイトからのリンク 3 つと、それに関連する iframely レポートを以下に示します。

:arrow_forward: ABC News の iframely レポート

:arrow_forward: CNN の iframely レポート

:arrow_forward: NBC News の iframely レポート

上記の ABC News の例と、この NBC News のリンクとの間で私が確認できる唯一の違いは、NBC がより多くの画像サイズ、アイコン、日付、そして説明を含んでいる点です。これらの中に「onebox」の発動を妨げる決定打(showstoppers)となるような要素があるでしょうか?

さて、CNN も説明を欠いていますが、アイコンと日付は持っています。もしかして説明は必須フィールドなのでしょうか…?

はい、説明がない場合は onebox は表示されません。

ああ。:-/

それは……少し大げさな対応のように思えます。説明が欠けているだけで、ワンボックスの素晴らしい美しさをすべて捨てる必要はないと思います。説明フィールドを持っていないサイト(現時点では ABC と CNN が該当します)でも、画像と見出しを表示できるようにする PR を作成してみます。

実は、この件がサポートトピックとして何度も上がっていることを考えると、もしワンボックス化を妨げている唯一の要因が説明タグの欠如(または説明が短すぎる)であれば、プレースホルダーの説明を追加すべきだと思います。例えば:

このページには説明タグがありません

これにより、少なくともワンボックス化され、何が起きているかが明確になります。@sam さん、これを割り当てていただけますか?

「説明必須」というルールを削除して、サイト設定レベルで任意にするべきではないかと考えています。

OP へのワンボックスは個人的には十分妥当だと思いますし、説明は不要に感じられます。

失礼を承知で申し上げますが、説明が利用できない場合に、このようなメッセージを表示する必要があるのでしょうか?!

これはワンボックスのデバッグをしている人にとっては有用なメッセージです。私たち技術者にとっては素晴らしいことです。

しかし、単に非技術系のサイトへのリンクを投稿したいだけの普通のユーザー( :wink: )にとっては、ワンボックスの内部動作に関心はなく、このメッセージは「ノイズ」以外の何物でもありません。Discourse を利用する大多数の人々(自動車、ソフトウェアサポート、コミュニティ、オーディオ機器などのサイト利用者)は、「説明タグ」が何か、なぜ重要なのか、また投稿したリンクがそれを「提供」したかどうかに関心もなければ、知る必要もありません。彼らが求めているのは、リンクが美しく表示されることだけ、それだけです。

とはいえ、説明タグがあるサイトのみでワンボックスが機能するように制限する必要はないという点では、誰もが同意するでしょう。特に説明が本当に必須ではない場合です。見出しと写真があれば、見た目も十分に良く、何もないよりはるかに優れています。

Facebook も Twitter も説明タグを必須としておらず、「このページには説明タグが含まれていません」といったメッセージも表示しません。それでも写真と見出しだけで見栄えの良いリンクを作成することに問題はありません。私の好きな最先端のフォーラムソフトウェアも、これに追随する理由がないとは思えません。:+1:

これは時期尚早です。これは起こるかもしれないし、起こらないかもしれません。@codinghorror がプロダクトマネージャーであり、採用する実装を選ぶ権限を持っています。

説明なしのワンボックスに対する「説明がない場合はワンボックスを表示しない」というルールは撤廃すべきで、必要であればオプトイン方式にするべきだと考えますが、最終的には私の判断ではありません。

もし「説明がない場合はワンボックスを表示しない」というルールを撤廃するか、オプション化する場合、説明のないワンボックス用の新しいビジュアルテンプレートが必要になるかもしれません。これは簡単な問題ではありません。このルールは、説明なしでの表示を嫌がる人々の不満から生まれたものです。

Federal appeals court overrules judge, orders Flynn case dismissed as DOJ requested は青色のテキストが大量にあります。例えば Twitter はそのテキストを黒色で表示し、青色ではありません。

まあ、そうでしょうね。

選択肢が以下の通りだとすれば、私には奇妙に思えます。

オプション A - 説明がない場合の現在の挙動

えーと、この記事をチェックして:

https://www.nbcnews.com/politics/congress/cats-saved-gov-t-kitten-slaughterhouse-visit-capitol-purr-thank-n1034811

オプション B - (提案された変更)説明がなくても onebox を描画する

えーと、この記事をチェックして:

本当に、人々はオプション B よりもオプション A を好んでいるのでしょうか?(それよりも重要なことですが、本当に、人々はオプション B が醜いと言ったのでしょうか?私には美的にも完全に実用的に見えるのですが…)

ここであなたが何を言っているのか、よくわかりません?私が Twitter にリンクを投稿すると、説明がなくても正常に展開されますか?このスレッドの最初の投稿で使った CNN のリンクを使って、今すぐテストしてみました。

そして、Discourse が現在、全く同じリンクをどのようにレンダリングしているか:

みんなが犬たちを世話してくれていて本当に嬉しい…

https://edition.cnn.com/2020/05/15/health/gallery/coronavirus-people-adopting-pets-photos/index.html

失礼ながら追記させてください。サポートへの問い合わせを減らすため、onebox の失敗をより詳細にログ出力できるようにしていただけませんか?そうすれば、問題が起きた際にサイト管理者が状況を把握しやすくなります。

レイアウトに大幅な修正が必要でなければ、その変更には賛成です @sam .. すでに「3 の法則」を大きく超えているので、この段階では説明なしのワンボックスを許可しても問題ないでしょう。

@codinghorror さん、@sam さん、ありがとうございます。大変感謝しております。

Onebox gem は、このコミット により、タイトルのみを表示する Onebox をサポートするようになりました。例:

数ヶ月後に このプルリクエスト で元に戻しましたが、その理由はなぜですか?