Twitterで画像なしのフォーラムへのリンク(メタタグを削除)

これは可能でしょうか?私はこれまでツイートにフォーラムのホームページへのリンクを追加してきましたが、画像なしで済ませたいと考えています。おそらく opengraph image が使用されているのだと思います(現在、私はこれをアップロードしていません)。

画像を完全に削除する方法はありますか?私のトピックにも画像は含まれないので、サイト全体でこれを適用しても構いません。

次善の策として、opengraph image に非常に小さなロゴをアップロードするのはどうでしょうか?Twitter はそれを現在のサイズと同じ大きさにリサイズするだけでしょうか?

よろしくお願いいたします。

確認しましたが、以下の部分を削除したいと考えています。

<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="filename.png">

これは可能でしょうか?

はい、可能です :slight_smile:

このモジュールの crawlable_meta_data メソッドをオーバーライドするプラグインを作成することもできます:

ソフトウェアの世界では何でも可能ですが、コンピュータソフトウェアで「不可能」なことはほとんどありません :slight_smile:

また、Pups を使って一致させて削除することも、おそらく可能でしょう。ただし、それはメタチームからは一般的に好ましくないとされています。

ありがとうございます。Discourse プラグインの作成方法と Ruby の仕組みについて調べてみます!

一般的に、メソッド全体を置き換える必要があり、Discourse のアップグレードのたびに適切な変更点を確認しなければならないのでしょうか?

短期的にはプラグイン作成に時間を割く余裕がなさそうです。Discourse のインストール内の関連ファイルを見つけ、アップグレードのたびにこれらの行をコメントアウトしたらどうなるでしょうか?

    if opts[:twitter_summary_large_image].present?
      result << tag(:meta, name: 'twitter:card', content: "summary_large_image")
      result << tag(:meta, name: "twitter:image", content: opts[:twitter_summary_large_image])
    elsif opts[:image].present?
      result << tag(:meta, name: 'twitter:card', content: "summary")
      result << tag(:meta, name: "twitter:image", content: opts[:image])
    else
      result << tag(:meta, name: 'twitter:card', content: "summary")
    end

Discourse リポジトリをワークスペース(フォルダ)にプルすると、これらのファイルは上書きされます。そのため、単にファイル内の行を「コメントアウト」することはできません。上書きされてしまうからです。

技術の可能性の分野ではさまざまな方法が存在しますが、コアを変更する一般的に受け入れられている方法は、前述の通りプラグインを使用することです。

一般的に、この場合はそのモジュール内のメソッドを、あなたのコードでオーバーライドすることになります。

本番環境のアプリケーションを壊したくないため、開発環境を作成するのが最も安全です。

これは比較的簡単に作成できるプラグインですが、この開発スタイルにまだ慣れていないため、Marketplace に投稿して、プラグイン開発で生計を立てている経験豊富な開発者の一人に助けを求めることを検討してください。

あるいは、開発環境を設定して、Discourse プラグインの開発を学びながら楽しむこともできます。