2014-01-23 119 views
0

我用一個很簡單的JavaScript來共享URL給Facebook牆:分享照片至Facebook通過JavaScript

window.open('https://www.facebook.com/sharer/sharer.php?u='+something); 

這允許用戶完成在Facebook的確認窗口中共享。但是,現在我需要以類似的方式分享圖片。
我也在使用open graph protocol來正確顯示我的網站的facebook預覽。但是,預覽通過使用合適的Facebook標籤調用是沒用的:

enter image description here
我想:我怎麼能強迫Facebook的出現英文?

是否可以共享網站作爲圖像或通過它的URL直接共享圖像?

如果可能,我不希望在我的網站上沒有Facebook API腳本,以及任何iframe或其他外觀不好的。
我也不知道用戶用共享窗口做了什麼。

+0

您需要使用打開的圖元標記。 – SLaks

+1

你是不是指''?我正在使用它。但這不會分享一個大的形象。該網站分享數學方程式,我需要它們在Facebook上可讀。否則,我可以分享網址。 –

回答

1

你需要在你的頁面頭中有圖像元標記。 (將你的圖片網址添加到Facebook og:圖像元標記等等等等)

<!-- for Google --> 
<meta name="description" content="" /> 
<meta name="keywords" content="" /> 

<meta name="author" content="" /> 
<meta name="copyright" content="" /> 
<meta name="application-name" content="" /> 

<!-- for Facebook -->   
<meta property="og:title" content="" /> 
<meta property="og:type" content="article" /> 
<meta property="og:image" content="" /> 
<meta property="og:url" content="" /> 
<meta property="og:description" content="" /> 

<!-- for Twitter -->   
<meta name="twitter:card" content="summary" /> 
<meta name="twitter:title" content="" /> 
<meta name="twitter:description" content="" /> 
<meta name="twitter:image" content="" /> 
+0

感謝這麼好的收藏 - 這肯定會對某人有用,但不適合我。我需要共享的東西看起來像一個大的,可讀的圖像。目的是直接向Facebook分享數學表達式,這樣我的同學們就可以閱讀它們而不需要去應用程序。 –

0

你試過用這個嗎?

身體

<div id="fb-root"></div> 
    <!-- FB Like --> 
    <script>(function(d, s, id) { 
      var js, fjs = d.getElementsByTagName(s)[0]; 
      if (d.getElementById(id)) return; 
      js = d.createElement(s); js.id = id; 
      js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; 
      fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
    </script> 

後添加這一點,這對您的分享按鈕出現

< DIV CLASS = 「FB-共享按鈕」 數據類型= 「button_count」>

0

我可以想到的一種方式是以臉書的形式分享圖片。但是,它又需要使用Facebook API。無論如何,我只是在這裏分享這個方法,你可以使用它,以防你喜歡使用Facebook API。

爲此,您可以向/{user-id}/feed端點發出POST請求。例如:

me/feed?message="Test"&link={Image_URL}&access_token={User_Access_Token} 

此方法需要一個有效的User Access Token與publish_stream許可。