railsでtwitter card を作ろうとしてます。
その記述をheadに書かないといけないのですが、
railsはapplication.html.erbのheadに書くべきだと思うのです。(普通は)
ただ、今回create actionが発火した時に、<head>の中身を条件分岐で変えたいと思っています。
create.html.erbのheadにこの記述を書いたのですが、twitter cardが作用してくれないんです。どうやら、application.html.erbに書かなければ動かないんじゃ無いかと思いました。
なので、application.html.erbに条件分岐を書いたのですが、そもそもcontrollerから情報が送られて来て無いので条件分岐ができない。
八方塞がりです。
どうすれば、うまく行くか教えていただきたいです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーー
applicationでインスタンス変数を使うということは、すべてのアクションでこのインスタンス変数を意識しなければならないことになるので、あまりいいやり方では無いということはわかっています。最終これを行おうかなと考えていますが、別解があればお願いします。
以下は、application.html.erb
<head> <title>I</title> <%= csrf_meta_tags %> <%= csp_meta_tag %> <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> <meta name="twitter:card" content="summary_large_image" /> <meta property="og:title" content="ikemen" /> <%if @page != nil %> <% case @pages.params_id%> <% when 2 then %> <meta property="og:image" content="https://ikemenquestions.herokuapp.com/assets/danbo-46c26031aa0cb15b1026d3f5c4c9685829b8012a9b152b431549e4d5a49c65f9.png" /> <% when 3 then %> <meta property="og:image" content="https://ikemenquestions.herokuapp.com/assets/danbo2-53e77ee200c3b77d6b3970e87e4298bce66ce804c485d0f838a26c3885ef0135.jpg" /> <% when 4 then %> <meta property="og:image" content="https://ikemenquestions.herokuapp.com/assets/blackman-237afb020b63d9a50b4ac81caa36c05d38804baeadf019044f341c835abd73cc.png" /> <% when 5 then %> <meta property="og:image" content="https://ikemenquestions.herokuapp.com/assets/danbo2-53e77ee200c3b77d6b3970e87e4298bce66ce804c485d0f838a26c3885ef0135.jpg" /> <% else %> <%end %> <% else %> <meta property="og:image" content="https://saruwakakun.com/wp-content/uploads/2016/11/IMG_9160.jpeg" /> <% end %> </head>
回答2件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。