html5 / ruby on rails6.1.0
商品ページにfacebookシェアするリンクを追加しました。
Facebookシェアの実装方法はいくつかありますが、
公式のシェアボタンによる方法ではなく、以下のようにhtmlの<a>タグでリンクする方法を使いました。
html
1<a href="https://www.facebook.com/share.php?u=投稿したいURL">
以下が実際のコードです。
このようにすると、twitterは問題なく投稿できますがfacebookの方だけ
「https://hogehoge-world.com/items/be7cd325ef34」
ではなく、(失敗して?)トップページである
「https://hogehoge-world.com」
が開いてしまいます。
html
1<a title="Twitterでシェアする" target="_blank" href="https://twitter.com/share?url=https://hogehoge-world.com/items/be7cd325ef34"></a> 2<a title="Facebookでシェアする" target="_blank" href="https://www.facebook.com/share.php?u=hogehoge-world.com/items/be7cd325ef34"></a>
試したこと
こちらによると、facebookの場合URLエンコードが必要とありました。
なのでruby on railsでエンコードしてみました。
ruby
ruby
1<%= link_to "https://www.facebook.com/share.php?u=#{url_encode(request.url)}", title: 'Facebookでシェアする', target: '_blank' do %>
出力されたHTML
html
1<a title="Facebookでシェアする" target="_blank" href="https://www.facebook.com/share.php?u=https%3A%2F%2Fhogehoge-world.com%2Fitems%2Fbe7cd325ef34"></a>
エンコードされたようですが、この状態でも開くとトップページが開きました。
他にも動作しているWP(のHTMLソース)を真似てURLの前半側を以下のように変えたりしましたが状況変わりませんでした。
html
1<a href= "//www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fhogehoge-world.com%2Fitems%2Fbe7cd325ef34">
どうすれば渡したURLでfacebookが開くでしょうか?
分かる方教えて下さい。宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。