[RUBY] [Rails] Richten Sie Twitter OGP ein

Es gibt keinen Edelstein.

Ich habe auf den folgenden Artikel für das Meta-Tag verwiesen, das zum Anzeigen von OGP auf Twitter erforderlich ist. [Ausgabe 2020] Was ist eine Twitter-Karte? Zusammenfassung der Verwendung und Einstellungsmethode

Implementierung

app/helper/application_helper.rb


def full_title(page_title = '')
  base_title = 'MC BATTLE CHANNEL'
  if page_title.empty?
    base_title
  else
    "#{page_title} | #{base_title}"
  end
end

def full_url(path)
  domain = if Rails.env.development?
             'http://0.0.0.0:3000'
           else
             'https://mcbattle-ch.jp'
           end
  "#{domain}#{path}"
end

erb:app/views/layouts/application.html.erb


<head>
  <!-- ogp -->
  <meta name="twitter:card" content="summary_large_image" />
  <meta name="twitter:site" content="@McBattleChannel" />
  <meta property="og:title" content="<%= full_title(yield(:title)) %>" />
  <meta property="og:url" content="<%= request.url %>" />
  <meta property="og:description"
    content="<%= content_for?(:description) ? yield(:description) : 'Dies ist eine umfassende Seite für MC-Schlachten.' %>" />
  <meta property="og:image"
    content="<%= content_for?(:image_url) ? yield(:image_url) : full_url('/assets/other/ogp_default.png') %>" />

erb:app/views/hoge/fuga.html.erb


<%= content_for(:title, "Titel dieser einzelnen Seite!") %>
<%= content_for(:description, "Beschreibung dieser einzelnen Seite!") %>
<%= content_for(:image_url, full_url("assets/mc/hoge.img")) %>

Wenn es nicht in der Produktionsumgebung angezeigt wird

Wenn Sie es in der Staging-Umgebung sehen, aber nicht in der Produktionsumgebung, liegt dies wahrscheinlich am OGP-Cache. Wenn Sie das unten stehende "Tool zum Überprüfen der Anzeige von OGP" verwenden, wird der Cache gleichzeitig mit dem Überprüfen der Anzeige geleert. https://cards-dev.twitter.com/validator

Recommended Posts

[Rails] Richten Sie Twitter OGP ein
[Schienen] Validierung einstellen
Rails6 OmniAuth Twitter-Authentifizierung E-Mail-bedingter Zweig