カスタムソーシャルボタン

最近、1つのプロジェクト-写真コンテスト-の開発に参加しました。 計画どおり、フォトアルバムの評価は、ソーシャルネットワーク上のすべての出版物(Facebook、Vkontakte、Twitter)の合計から作成する必要があります。 つまり フォトアルバムの総合評価が計算されます。

フォトアルバムの評価= Facebookの「共有」+ Vkontakteの「保存」+ Twitterの「リツイート」


モックアップでは、ボタンの外観は、API関数によって提供されるソーシャルネットワークによって提供されるプラグインとはわずかに異なっていました。 特に、カウンターのタイプ:

画像

設計との矛盾に加えて、各プラグインは過剰なHTMLコードを生成しますが、簡潔にしたいと思います。



各ネットワークのapiを詳細に検討した結果、ボタンをカスタマイズするための高度な機能がないと最終的に確信しました。この事実は理解できます。 既製のプラグインの使用を放棄し、独自のボタンを作成することにしました。



だから:





ボタン



各ネットワークには、共有、保存、ツイートを使用してページを追加する要求を処理するためのスクリプトがあります。 この場合、特定のパラメーターがスクリプトに渡されます。 GETリクエストは次のようになります。



Facebook:

_http://www.facebook.com/sharer.php?u = <- 公開ページのURL ->&t = <-title->&src = sp

Vkontakte:

_http://vkontakte.ru/share.php?url = <- 公開されたページの URL->

Twitter

_http://twitter.com/share?url = <- 公開ページのurl ->&text = <-title->



標準機能をシミュレートするために、背景付きのリンクの形でボタンを発行します。



画像



私はCSSを提供しません。これは問題ではないはずです。 各リンクボタンのhref属性には、上記のテンプレートに従ってURLを含める必要があります。



出力前に、urlはurlencode()を使用してセーフモードになります。 コードは次のとおりです。

  1. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  2. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  3. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  4. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  5. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  6. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  7. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  8. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  9. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  10. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  11. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  12. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  13. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  14. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  15. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





  16. < div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >





< div id = "social_block" > < div id = "vk_sharer" > < span > 53 < / span > < a id = "vk_btn" href = "_http://vkontakte.ru/share.php?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F" target = "_blank" title = " " >< / a > < / div > < div id = "fb_sharer" > < span > 116 < / span > < a id = "fb_btn" href = "_http://www.facebook.com/sharer.php?u=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&t=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&src=sp" target = "_blank" title = " " >< / a > < / div > < div id = "tw_sharer" style = "" > < span > 31 < / span > < a id = "tw_btn" href = "_http://twitter.com/share?url=http%3A%2F%2Fsite.ru%2Fklasnaya-stranitsa%2F&text=%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B0%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0" target = "_blank" title = "Retweet" >Retweet< / a > < / div > < hr / > < div id = "total_count" > 200 < / div > < / div >







また、ソーシャルネットワーク上の「投稿」がどのように見えるかを管理することもできますこれを行うには、ページの< head >セクションに対応するメタタグを配置します。



Facebookには、この目的のためにOpen Graphタグがあります。



< meta property = "og:title" content = "" / > <br/>

< meta property = "og:description" content = "" / > <br/>

< meta property = "og:image" content = "url " / >





< meta property = "og:title" content = "" / > <br/>

< meta property = "og:description" content = "" / > <br/>

< meta property = "og:image" content = "url " / >







Vkontakteは以下を探します。



< meta name = "title" content = " " / > <br/>

< meta name = "description" content = " . ." / > <br/>

< link rel = "image_src" href = "_http://mysite.com/mypic.jpg" / >





< meta name = "title" content = " " / > <br/>

< meta name = "description" content = " . ." / > <br/>

< link rel = "image_src" href = "_http://mysite.com/mypic.jpg" / >







次に、各ボタンのクリックイベントを処理します。ボタンが発生すると、href属性で指定されたurlで新しいブラウザーウィンドウを開きます。指定された幅と高さのウィンドウは、それ以外の場合は新しいタブとして開きます。



Facebookボタン(jQuery)のコード:



  1. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  2. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  3. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  4. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  5. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  6. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  7. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  8. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  9. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  10. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  11. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  12. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  13. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  14. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  15. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  16. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  17. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  18. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  19. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  20. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  21. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  22. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





  23. var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;





var click = false ; $ ( '#fb_btn' ) . click ( function ( ) { // if ( ! click ) { var social_box = $ ( this ) . parent ( 'div' ) ; // 1 var count = parseInt ( $ ( 'span' , social_box ) . text ( ) ) ; if ( ! isNaN ( count ) ) { count = count + 1 ; $ ( 'span' , social_box ) . text ( count ) ; } // 1 var total_cnt = parseInt ( $ ( '#total_count' ) . text ( ) ) ; if ( ! isNaN ( total_cnt ) ) { total_cnt = total_cnt + 1 ; $ ( '#total_count' ) . text ( total_cnt ) ; } click = true ; } // window. open ( $ ( this ) . attr ( "href" ) , 'displayWindow' , 'width=700,height=400,left=200,top=100,location=no, directories=no,status=no,toolbar=no,menubar=no' ) ; return false ; } ) ;







残りについても同様です。 ご覧のように「共有」することで、すべてが非常に簡単になります。



カウンター



ページが作成された後、ソーシャルネットワークのRESTサービスから各ページの共有数を受け取ります(準備完了イベント)。 jQueryはプロジェクトのあらゆる場所で使用されていたため、ここでは特にクロスドメインクエリを実行できる$ .getJSONメソッドが役立ちます(jQuery 1.5では、この機能は$ .ajaxにも追加されました)。



Facebookのコード:

  1. var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;





  2. var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;





  3. var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;





  4. var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;





  5. var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;





var pageuri = '<-- url -->' ; $. getJSON ( 'http://api.facebook.com/restserver.php?method=links.getStats&callback=?&urls=' + pageuri + '&format=json' , function ( data ) { // DOM $ ( '#fb_sharer span' ) . text ( data [ 0 ] . share_count ) ; } ) ;







VKontakteの場合、VKとVK.Share、およびVK.Share.countのコールバックメソッド(インデックス、カウント)の2つのオブジェクトを宣言する必要があります。

  1. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  2. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  3. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  4. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  5. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  6. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  7. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  8. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





  9. var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;





var pageuri = '<-- url -->' ; VK = { } ; VK. Share = { } ; // callback VK. Share . count = function ( index , count ) { // DOM $ ( '#vk_sharer span' ) . text ( count ) ; } ; $. getJSON ( 'http://vkontakte.ru/share.php?act=count&index=1&url=' + pageuri + '&format=json&callback=?' ) ;







Twitterの場合:

  1. var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;





  2. var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;





  3. var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;





  4. var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;





  5. var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;





var pageuri = '<-- url -->' ; $. getJSON ( 'http://urls.api.twitter.com/1/urls/count.json?url=' + pageuri + '&callback=?' , function ( data ) { // DOM $ ( '#tw_sharer span' ) . text ( data. count ) ; } ) ;







データを受信した後、DOMに追加し、ボタンでブロック全体を表示します。次に例を示します。
$ '#social_block' fadeIn 'fast);
ユーレカ!



評価の更新



この場合、各フォトアルバムのコンテストデータベースには、各ネットワークのカウンターの値と合計評価が保存されます。 したがって、ソーシャルネットワークからデータを受信した後、それらはサイトのデータベースに格納されているデータと比較され、少なくとも1つの値が異なる場合、更新のためにajaxによって送信されます。 ここでは誰もが独自のアプローチを持つことができるので、私はそれに集中しません。



結果として得られるjQueryプラグインの完全なコードは、必要な人を投稿し、好みに合わせてアレンジすることも意味がないと思います。 もちろん、同じことをサーバースクリプトとCURLを使用して実装して、たとえば同じデータを取得することもできますが、それをクライアント側に転送する方が魅力的です。



そしてもう1つ:FacebookはShare機能をLikeに移行しましたが、Shareはまだ機能しており、継続したいと思っています。 いいねの数を取得するには、コールバックでdata [0] .like_count関数を使用します。



更新:

例付きのアーカイブ



All Articles