'embed.imported_from'で他の変数を使用することは可能ですか?

embed.imported_from で、%{link} 以外の変数を使用することは可能でしょうか?

タイトルと URL を別々にリンクとして作成したいと考えています(デフォルトのメッセージでは、URL はそのまま完全な形式で表示されます)。

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

RSS経由で作成されたトピックを削除すると、比較的すぐに復活してしまいます。これを防ぐにはどうすればよいでしょうか?よろしくお願いします。

「カスタマイズ/埋め込み」の「埋め込む投稿の最大数」をさらに減らして、これで解決するのを期待しています。

追記:その値を3に減らし、8件の投稿を削除しました。すると、その8件が同時に復活してしまいました。

もしかすると、RSSフィードから利用できなくなるまでトピックを削除しないことが答えなのかもしれません。

==============================

2020年10月31日:ここでは自分自身と会話しているため返信できないので、この投稿を編集します :slight_smile:

これはRSSプラグインとは関係ないと思い直しました。

これについても回答をいただければ幸いです :slight_smile:

解決策は、トピックをRSSフィードから再度吸い上げられないように、リストから除外することでした。

使用されるパスは、各フィード項目に対して設定された link 属性の値によって決定されます。私は、rss.cnn.com のフィードのパスを特定するために、自サイトのフィード URL 設定に http://rss.cnn.com/ を追加し、それによって作成されたトピックの埋め込み URL を確認したと考えています。

このメッセージのカスタマイズについてまだ興味があります。ご協力をいただき、事前にありがとうございます。

今日フォーラムを閲覧していて、再びこの点について考えました。質問する理由は、一部の URL が長く複雑であるため、HTML の a タグ内で、より有用なテキストの背後にそれらを「隠せ」ると良いからです。

この件についてぜひお聞かせいただければ幸いです :slight_smile: ありがとうございます。

いいえ、%{link} プレースホルダーに渡される値は、Discourse のコード内でそのプレースホルダーに渡される URL です。プレースホルダーの名前を変更しても、その動作には影響しません。

ありがとうございます。https://duck.com/ の代わりに、DuckDuckGo のようなリンク形式に変換することは可能でしょうか?

現在のコードでは動作しません。リンクを作成しているメソッドは以下の通りです。

  def self.imported_from_html(url)
    "\n<hr>\n<small>#{I18n.t('embed.imported_from', link: "<a href='#{url}'>#{url}</a>")}</small>\n"
  end

これでは、リンクの URL がリンクテキストとして設定されたリンクが常に作成されてしまいます。

改めてありがとうございます。これはプラグインで簡単に上書きできるようなものですか?文字列全体を変更したいのですが、プラグインの作成は未経験です。将来的には挑戦してみたいですね。

また、トピックの日付は RSS フィード項目の日付ではなく、インポート日になっているようです。これを変更する方法はありますか?ソースで RSS 項目(例えば説明)が変更されるまでは問題ありませんが、変更されると最新の投稿として順序が崩れて表示されてしまいます。

追記:この問題への回答は、カテゴリのデフォルトのソート順序を「作成日降順」に変更することでした。メインのカテゴリページではまだ反映されていませんが、おそらく 24 時間以内に反映されるでしょう。

プラグインの作成は久々ですが、メソッドをプラグイン内で再オープンして、HTML 出力をカスタマイズすることは可能だと考えています。

その通りです。トピック作成時にフィードアイテムの日付は使用されません。