Wie passt man den Hot Topic Score Algorithmus mit einem Plugin an?

Am einfachsten, könnte aber je nachdem, was Sie tun möchten, eingeschränkt sein.

Machbar, aber komplexer. Werfen Sie einen Blick darauf, wie TopicQuery Listen implementiert

und speziell

  def list_hot
    create_list(:hot, unordered: true, prioritize_pinned: true) do |topics|
      topics = remove_muted(topics, user, options)
      topics.joins("JOIN topic_hot_scores on topics.id = topic_hot_scores.topic_id").order(
        "topic_hot_scores.score DESC",
      )
    end
  end

Sie können relativ einfach eine zusätzliche hinzufügen, obwohl Sie einige bewegliche Teile berücksichtigen müssen. Ich habe das in meinem Plugin ‘homepage-filter’ getan, und das könnte ein guter Ausgangspunkt sein.