2014年2月10日 星期一

輕量級的分享按鈕(facebook, twitter, google+)

先前為了節省寫程式的時間,都統一用 addthis 來製作分享按鈕。其實一直以來都很想要把 addthis 換掉,因為 addthis 很肥、會拖慢頁面速度、繁體會變簡體、不支援多國語系...

輕量級的分享按鈕

其實 facebook 的 按讚按鈕(plugin)很肥;Google+ 的按鈕也很肥,addthis 把好幾個包裝起來又更肥了。簡單統計一下,addthis 佔了 6 個 requests、facebook佔了 7 個 requests、google+ 也有扯,連字型檔都載入,約有 12 個 requests 、twitter 佔 9 個。這些只是 request 數量而已,javascript 就不知道會吃掉多少的CPU時間。

看到這一篇的方法不錯,大意就是用純文字連結來當分享按鈕,而按鈕點下去,會跳出分享連結的頁面。這個方法的最大缺點就是,沒有讚數,可能會降低按讚分享的意願;再來是按讚和分享的感覺是完全不同的,有時候只是想讚一下,並不想分享。

如果採用這一篇的做法的話,純連結是 0 個 requests ,如果再加個圖案的話,有將圖片合併過的話也只是多一個 requests

輕量級的頁面對 SEO 也是有好處的。

移除分享按鈕?

也看到有人說的獨特做法,就是移除分享按鈕,聽起來也是不錯,想分享的人就複製網址分享了,未必因為是方便分享而分享。移除分享按鈕還有另外一個好處就是節省版面。版面上的東西越多,會增加頁面的複雜度,降低使用者對頁面的滿意度,滿意度可以決定使用者會不會主動分享你的頁面。再來就是頁面過多的東西,也會降低廣告的點擊率。

真正的好文章或好工具,並不是因為分享按鈕設的多大才按的。工具邦有被按讚到 20 萬的頁面,在GA設了_tracksocial 統計之後會覺得,分享按鈕其實是多餘的。

概念整理

這邊整理一下個人認為的按讚分享的一些重點潛見,未經統計和證實:

  • 看到很多的讚數,可能會增加按讚分享的意願
  • 按個讚比分享連結的意願高
  • 分享按鈕會拖慢頁面的速度
  • 分享按鈕會增加頁面的複雜度,降低使用者滿意度和分享數

工具邦採行的作法

工具邦是多國語言版,目前有11國語言。最常用的大概就是 facebook、twitter和google+,美國、日本、台灣、韓國大概都可以通用。中國大陸我們採用 baidu 的分享按鈕
,速度也蠻快的。而其它國家地區原本想要統一用 facebook、twitter 和  google+ ,先到 cdnjs 去搜一下,剛好看到 social likes 這個專案,它儘可能的節省你的 request ,如果要 show 讚數的話,facebook / twitter 的讚數是直接向原服務去要的,以javascript(json) callback 的方式,對頁面 loading 不大;而 google+ 沒有 javascript callback 的方法,在 stackoverflow 大家都說需要做一個後端來抓+1數,而 social likes 是用 yandex 提供的 api (http://share.yandex.ru/gpp.xml?url={url}), yandex是俄國的PR8的網站,所以應該蠻穩定的,而且不會倒掉。

Google 之前說想要 make web faster ,他們應該先把 Google+ 給減減肥比較實際一點。