独自アイコンにすると、Facebookシェア数表示が0になる

Simplicityの特徴 フォーラム Simplicity2に関する話題何でも 独自アイコンにすると、Facebookシェア数表示が0になる

17件の返信スレッドを表示中
  • 投稿者
    投稿
    • #44481
      simpfan
      ゲスト

      こんにちは。いつもお世話になってます。

      先ほど気付いたのですが、私のサイトのすべてのページでFacebookシェア数表示が0になっていました。
      どうやらデフォルトのサービス固有のボタンに設定すると正常に表示されるようなのですが、そうすると今度はTwitterのツイート数が表示されなくなってしまいます。

      そして今Simplicityと寝ログを拝見しましたところ、どちらもFacebookシェア数がすべてのページで0になっているように見えます。
      となるとこれは、私の環境や設定ミスによるものではないと考えていいでしょうか?

      よろしくお願いします。

    • #44482
      hidekichi
      ゲスト

      おそらく何かしらの問題が発生しています。
      うちのサイトは、オリジナルのやり方とは変えているので大丈夫ですが、確かにcloud9の方でもfacebookのカウントが本来は0になるところが!と表示されていたりしていたので何かはまだ調べてないですが、問題は出ているだろうと思います。

      wordpressのアップデートに伴うjQuery等のバージョンが上がったり、あるいはjQuery等を読み込んでいる関数に手が入ったのかもしれません。

    • #44484
      hidekichi
      ゲスト

      今見てみた所、facebookからのレスポンスがfailになっており、その中を見てみたらシンタックスエラーでjsonが返ってきていて、json.parseがエラーを吐いているようです。

      イケるかどうかはわかりませんが、以前のfacebookのカウント数を覚えている方は、親テーマjavascript.js

      //Facebookのシェア数を取得

      部分のajax(ここにソースを貼れなかったので文字で説明してます)のdataTypeをjsonpからjsonに変えてみてください。
      どうも形式がjsonクサイです。一時的にそうなっているだけかもしれませんし、何か決定的なソースがないとアレですが、たぶんfacebook側の話ではなかろうかと。

    • #44485
      hidekichi
      ゲスト

      jsonpじゃないとクロスドメインの制限に引っかかるかもなので、「//Facebookのシェア数を取得」のajax内を以下のように修正かなと。data部分(ソース貼り付けると投稿エラーが出るので)サンプルで。

      サンプル: 親テーマjavascript.jsのfacebook ajax部分 | jsFiddle

    • #44486
      hidekichi
      ゲスト

      ブラウザ上(console|→network|→responce)で、json.parseにエラーは出てますが、ajax部分のresの値は#44485でとれてます。

    • #44502
      わいひらわいひら
      キーマスター

      #44481
      よかったら、サイトのURLを掲載していただくことは可能でしょうか。

    • #44511
      simpfan
      ゲスト

      他の環境でも出ている症状ならあえて書かなくてもいいかと思いましたが、あえて隠すこともありませんね。
      ということで、これが私のサイトです。

      http://yotubaiotona.net/

      少しでもお役に立てるなら嬉しいです。
      よろしくお願いします。

    • #44514
      hidekichi
      ゲスト

      ちなみに、Simplicityの公式でもここしばらくfacebookのカウントは0のままですよ。
      ホームとか。New他のカテゴリもそうです。

      SNSのカウントキャッシュが効いているんですかね?apiへのアクセスがないようなので調べてなかったですけれども。

    • #44519
      わいひらわいひら
      キーマスター

      このサイトは、SNS Count Cacheを使用しているのに、0になっているんですね。
      全然気づいてませんでした。
      ということは、やっぱりFacebookの仕様変更とかなんでしょうね。

      さっきたまたま見かけたのですが、以下のとかが原因なのかもしれませんね。
      今日は遅いので、明日検証しようと思います。
      あるブログのFacebookシェアボタンのカウント数が取得出来ない – 時期尚早

    • #44521
      わいひらわいひら
      キーマスター

      どうやら原因がわかりました。
      javascript.js部分の以下の部分を

      //Facebookのシェア数を取得
      function fetch_facebook_count(url, selector) {
          jQuery.ajax({
            url:'https://graph.facebook.com/',
            dataType:'jsonp',
            timeout: 10000, //10sec
            data:{ id:url }
          }).done(function(res){
            jQuery( selector ).text( res.shares || 0 );
          }).fail(function(){
            jQuery( selector ).html('<span class="fa fa-exclamation"></span>');
          });
      }

      以下のように変更するといいみたい。

      //Facebookのシェア数を取得
      function fetch_facebook_count(url, selector) {
          jQuery.ajax({
            url:'https://graph.facebook.com/',
            dataType:'jsonp',
            timeout: 10000, //10sec
            data:{ id:url }
          }).done(function(res){
            jQuery( selector ).text( res.share.share_count || 0 );
          }).fail(function(){
            jQuery( selector ).html('<span class="fa fa-exclamation"></span>');
          });
      }

      resオブジェクトのシェアカウント格納部分に「 res.shars→res.share.share_count」のような変更があったみたいです。
      とりあえず、修正版は、明日余裕があったら出します。

    • #44552
      Yatra
      ゲスト

      便乗質問いたします。

      私はSimplicity 1の利用者です。
      けっこうカスタマイズしていますし、現状で不満もありません。

      そんな私が、ブログでFaceBookのシェア数を表示するにはSimplicity 2にアップデートする必要があるということになりますでしょうか?

    • #44553
      hidekichi
      ゲスト

      jQuery( selector ).text( res.share.share_count || 0 );

      ここは確かにres.share.share_countになってますが、これだけだと!が出る状態だったんです。前のレスから色々と試していたん出すけれども、うちのcUrlで拾っているfacebookの方はhttpなので、ん?と思いましてみてたら、うちのスクリプト、

      url:'https//graph.facebook.com/',

      になってました。まさかのコロン抜け(笑)
      テストしてた時は、https:を外してたから気が付かなかったです(笑)

      ということで、エラーは出ないのを確認できました。

    • #44554
      hidekichi
      ゲスト

      > Yatra さん

      1.9.3あたりのjavascript.jsを見てみましたが、おそらく

      jQuery( selector ).text( res.shares || 0 );
      
      // ↓
      
      jQuery( selector ).text( res.share.share_count || 0 );

      でイケると思いますよ。色々と2系とは違いますが、今まで行けていたのであればこれだけかと思います。

    • #44555
      k
      ゲスト

      こんにちは
      いつもお世話になっています。

      先ほどSimplicity2.2.7にしましたがSNS Count Cacheを使用しているとfacebookのみキャッシュがとれず表示されないままでした。
      SNS Count Cacheを停止するとfacebookのシェア数が表示されました。

      取り急ぎご報告まで

    • #44556
      Yatra
      ゲスト

      >hidekichiさん

      ありがとうございます!
      早速教えていただいた通りにやってみました。

      FBのいいね!数が無事に表示されました。
      https://goo.gl/Bb5tt1

      感謝です。

    • #44558
      わいひらわいひら
      キーマスター

      SNS Count Cacheは、プラグイン側の問題なので、アップデートを待つか、自前でプラグインのコードを修正してください。

    • #44596
      古沢伸介
      ゲスト

      SNS Count Cache プラグインの作者の方に、要望を出したところ、早速対応していただきました。
      0.9.2にアップデートするとfacebookのカウントができるようになっていました。

      https://ja.wordpress.org/plugins/sns-count-cache/

    • #44599
      わいひらわいひら
      キーマスター

      要望を出していただけたんですね。ありがとうございます。
      早速アップデートさせていただきました。

17件の返信スレッドを表示中
  • トピック「独自アイコンにすると、Facebookシェア数表示が0になる」には新しい返信をつけることはできません。
スポンサーリンク
アドセンス(大)
アドセンス(大)