Web siteme facebook paylaş düğmesi nasıl eklenir?


101

Çalışması gereken ama çalışmayan bu koda sahibim. Bu size yine de yardımcı oluyorsa harika olur.

<script src='http://connect.facebook.net/en_US/all.js'></script>
    <p><a onclick='postToFeed(); return false;'><img src="images/fb.png" /></a></p>
    <p id='msg'></p>

    <script> 
      FB.init({appId: "338334836292077", status: true, cookie: 

true});

      function postToFeed() {

        // calling the API ...
        var obj = {
          method: 'feed',
          redirect_uri:'https://www.facebook.com/cryswashington?fref=ts',
          link:'https://developers.facebook.com/docs/reference/dialogs/',
          picture: 'http://fbrell.com/f8.jpg',
          name: 'Facebook Dialogs',
          caption: 'Reference Documentation',
          description: 'Using Dialogs to interact with users.'
        };

        function callback(response) {

        document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
        }

        FB.ui(obj, callback);
      }

    </script>

Web siteme facebook paylaş butonu eklemek istiyorum, bu sadece web sitemin içeriğini duvarda yayınlamalıdır. kim paylaşmak ister.

Çok araştırdım ama hiçbir şey alamadım. Lütfen bu konuda bana yardım edin.

Şimdiden teşekkürler.


Yanıtlar:


258

Tüm bu koda ihtiyacınız yok. İhtiyacınız olan tek şey aşağıdaki satırlar:

<a href="https://www.facebook.com/sharer/sharer.php?u=example.org" target="_blank">
  Share on Facebook
</a>

Belgeler https://developers.facebook.com/docs/reference/plugins/share-links/ adresinde bulunabilir.


7
Bu seçeneği gerçekten beğenme ... tweet butonu gibi bir bağlantı olsaydı keşke
Serj Sagan 18'13

105
Neden bağlantıya stil vermiyorsun? Bu seçeneği kesinlikle tercih ediyorum. Tasarımlarımın nasıl göründüğünü kontrol etmeyi seviyorum.
sheriffderek

6
Ayrıca, bu şekilde facebook önemsiz kodunu eklemez, bu da sayfanızı yavaşlatır. Sharrre.com jquery eklentisine bakın, görünümü özelleştirmeyi kolaylaştırır ve birkaç sosyal "beğen" düğmesini bir araya toplayın.
pixeline

3
Evet, yine de basit paylaşım bağlantılarını kullanabilirsiniz. Ayrıca, tüm popüler sosyal medya siteleriniz için basit bağlantılar oluşturmanıza yardımcı olacak bu basit sayfaya göz atın
pistol-pete

1
Önemli not: Mobil cihazlardaki bu fikir Facebook web sitesini açar (FB uygulamasını değil). Küçük (veya büyük) con.
Ezra Siton

26

Bunu facebook tarafından sağlanan asenkron Javascript SDK kullanarak yapabilirsiniz.

Aşağıdaki koda bir göz atın

FB Javascript SDK başlatma

<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'YOUR APP ID', status: true, cookie: true,
xfbml: true});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>

Not: APP ID'nizi facebook AppId ile değiştirmeyi unutmayın. Facebook AppId'iniz yoksa ve nasıl oluşturulacağını bilmiyorsanız lütfen bunu kontrol edin

JQuery Kitaplığı ekleyin, Google Kitaplığı'nı tercih ederdim

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>

Paylaşım iletişim kutusu ekle (Bu iletişim kutusunu parametreleri ayarlayarak özelleştirebilirsiniz.

<script type="text/javascript">
$(document).ready(function(){
$('#share_button').click(function(e){
e.preventDefault();
FB.ui(
{
method: 'feed',
name: 'This is the content of the "name" field.',
link: 'http://www.groupstudy.in/articlePost.php?id=A_111213073144',
picture: 'http://www.groupstudy.in/img/logo3.jpeg',
caption: 'Top 3 reasons why you should care about your finance',
description: "What happens when you don't take care of your finances? Just look at our country -- you spend irresponsibly, get in debt up to your eyeballs, and stress about how you're going to make ends meet. The difference is that you don't have a glut of taxpayers…",
message: ""
});
});
});
</script>

Şimdi nihayet resim düğmesi ekle

<img src = "share_button.png" id = "share_button">

Daha detaylı bilgi için. lütfen buraya tıklayın


7
... bunu Twitter eşdeğerinin ilklendirilmesiyle karşılaştırın. Fındık.
Michael

6
Yaklaşımınız bir uygulama kimliği gerektiriyor, bu büyük bir acı.
horseyguy

Bu hala bir cazibe gibi çalışıyor! Harika bir iş!
Coding Freak

Güzel!! anlaması kolay. Ancak kullanıcının gerçekten içeriğimizi paylaşıp paylaşmadığını nasıl anlarız? Not: response.error_message yalnızca uygulamanızı kullanan biri uygulamanızı yetkilendirdiyse görünecektir
Pearl

14

Facebook geliştiriciler web sitesinde burada paylaş düğmesi hakkında daha fazla bilgi edinebilirsiniz

Çalışma JSFIDDLE

Ayrıca özel Facebook Paylaşım düğmesi JSFIDDLE'ye bir göz atın

Facebook JavaScript SDK kodunu açılış <body>etiketinin hemen sonrasına ekleyin

<div id="fb-root"></div>
<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>

Ve Facebook Paylaş düğmesini göstermek istediğiniz yere kodu aşağıya yerleştirin

<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-width="200" data-type="button_count"></div>

görüntü açıklamasını buraya girin

Çalışan JSFIDDLE'yi kontrol edin


8
Bu kodun artık çalışmaması mümkün mü? Jsfiddle'da bile değil
erdomester

8
Evet, bunu kendim çalıştırmakta ciddi sorun yaşıyorum ... Sonunda boş bir div buldum.
Michael

@erdomester Keman, Chrome veya Firefox'ta görünmez. Bunun nedeni, tarayıcı güvenliğinin korumalı alandaki iframe'leri engellemesidir. Jsfiddle'ı Safari'de açmak gösterilmeli ve bir jsfiddle dışında uyguladığınızda diğer tarayıcılarda görünmelidir.
JisuKim82

4

Facebook hisse için bir görüntü ile bir olmadan API ve kullanan #bir alt sayfasına derin bağlantı, mesele olarak görüntüyü paylaşmak oldu picture=

değişken mainUrlolacaktırhttp://yoururl.com/

var d1 = $('.targ .t1').text();
var d2 = $('.targ .t2').text();
var d3 = $('.targ .t3').text();
var d4 = $('.targ .t4').text();
var descript_ = d1 + ' ' + d2 + ' ' + d3 + ' ' + d4;
var descript = encodeURIComponent(descript_);

var imgUrl_ = 'path/to/mypic_'+id+'.jpg';
var imgUrl = mainUrl + encodeURIComponent(imgUrl_);

var shareLink = mainUrl + encodeURIComponent('mypage.html#' + id);

var fbShareLink = shareLink + '&picture=' + imgUrl + '&description=' + descript;
var twShareLink = 'text=' + descript + '&url=' + shareLink;

// facebook
$(".my-btn .facebook").off("tap click").on("tap click",function(){
  var fbpopup = window.open("https://www.facebook.com/sharer/sharer.php?u=" + fbShareLink, "pop", "width=600, height=400, scrollbars=no");
  return false;
});

// twitter
$(".my-btn .twitter").off("tap click").on("tap click",function(){
  var twpopup = window.open("http://twitter.com/intent/tweet?" + twShareLink , "pop", "width=600, height=400, scrollbars=no");
  return false;
});

2

Facebook'ta oturum açmayı gerektirmeden İletişim Kutusunu paylaşın

Bir bağlantıyı paylaşmak için paylaşım yöntemi parametresiyle FB.ui işlevini kullanarak bir Paylaşım İletişim Kutusunu tetikleyebilirsiniz. Bu iletişim kutusu, bir URL'ye tam yeniden yönlendirme yaparak JavaScript, iOS ve Android için Facebook SDK'larında kullanılabilir.

Bu aramayı tetikleyebilirsiniz:

FB.ui({
  method: 'share',
  href: 'https://developers.facebook.com/docs/', // Link to share
}, function(response){});

Facebook ile paylaşılan hikayeyi özelleştirmek için bu URL'deki sayfaya açık grafik meta etiketleri de ekleyebilirsiniz.

Response.error_message'ın yalnızca uygulamanızı kullanan biri uygulamanızı Facebook Login ile doğrulamışsa görüneceğini unutmayın.

Ayrıca Javascript Facebook SDK'ya sahip olarak doğrudan çağrı ile bağlantı paylaşabilirsiniz.

https://www.facebook.com/dialog/share&app_id=145634995501895&display=popup&href=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2F&redirect_uri=https%3A%2F%2Fdevelopers.facebook.com%2Ftools%2Fexplorer

https://www.facebook.com/dialog/share&app_id={APP_ID}&display=popup&href={LINK_TO_SHARE}&redirect_uri={REDIRECT_AFTER_SHARE}
  • app_id => Uygulamanızın benzersiz tanımlayıcısı. (Gereklidir.)

  • redirect_uri => Bir kişi iletişim kutusundaki bir düğmeyi tıkladıktan sonra yeniden yönlendirilecek URL. URL yeniden yönlendirme kullanılırken gereklidir.

  • display => İletişim kutusunun nasıl oluşturulacağını belirler.

URL yeniden yönlendirme diyalog uygulamasını kullanıyorsanız, bu Facebook.com'da gösterilen tam sayfa görüntüsü olacaktır. Bu görüntüleme türüne sayfa denir. İletişim kutusunu çağırmak için iOS veya Android SDK'larımızdan birini kullanıyorsanız, bu otomatik olarak belirlenir ve cihaz için uygun bir ekran türü seçer. JavaScript için Facebook SDK kullanıyorsanız, bu varsayılan olarak uygulamanıza giriş yapan veya Facebook.com'da bir oyun içinde kullanırken eşzamansız olan kişiler için bir modal iframe türü ve diğer herkes için bir açılır pencere olacaktır. Ayrıca gerekirse, JavaScript için Facebook SDK'yı kullanırken pop-up veya sayfa türlerini zorlayabilirsiniz. Mobil web uygulamaları her zaman varsayılan olarak dokunmatik ekran türüne ayarlanır. Parametreleri paylaş

  • href => Bu gönderiye eklenen bağlantı. Yöntem paylaşımını kullanırken gereklidir. Paylaşılan hikayeyi özelleştirmek için bu URL'deki sayfaya açık grafik meta etiketleri ekleyin.

1

Kendi özel sunucunuz veya farklı sayfalar ve resim düğmesi için bunun gibi bir şey kullanabilirsiniz (yalnızca PHP)

<a href="http://www.facebook.com/sharer/sharer.php?u=http://'.$_SERVER['SERVER_NAME'].'" target="_blank"><img src="http://i.stack.imgur.com/rffGp.png" /></a>

Snippet'i bununla paylaşamam ama fikri alacaksın ...


0

Bu Facebook sayfası , çeşitli paylaşım düğmeleri oluşturmak için basit bir araca sahiptir.

Örneğin, bu aldığım bazı çıktılar:

<div id="fb-root"></div>
<script async defer crossorigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v8.0" nonce="dilSYGI6"></script>
<div class="fb-share-button" data-href="https://www.mocacleveland.org/exhibitions/lee-mingwei-you-are-not-stranger" data-layout="button" data-size="small">
<a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.mocacleveland.org%2Fexhibitions%2Flee-mingwei-you-are-not-stranger&amp;src=sdkpreparse" class="fb-xfbml-parse-ignore">Share</a>
</div>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.