Simplicityの特徴 › フォーラム › Simplicityについての質問 › feedlyの表示がおかしい
- このトピックには14件の返信、2人の参加者があり、最後ににより1年、 7ヶ月前に更新されました。
-
投稿者投稿
-
-
2015年10月28日 12:57 PM #33476マグゲスト
simplicityの1.9.0を使用しています。
外観→カスタマイズ→SNS→ [feedlyボタンの表示(PCのみ吹出付)]にチェックをうってfeedlyボタンを表示しています。
PCから見た場合に吹き出し部分に数字が表示されずに真っ白な状態です。ボタン自体は機能している様子です。
スマホから見ると数字の確認はできます。
すいませんが、対処方法をお願いいたします。 -
2015年10月28日 3:21 PM #33479やまりんゲスト
simplicityの1.9.0にいれかえましたところ、feedlyのカウントがぐるぐる回っています。
バイラルタイプです。
先行投稿の方と同じ現象だと思われます。 -
2015年10月28日 3:40 PM #33481Hidekichiゲスト
やまりんさんの症状としては、マグさんのとはちょっと異なるかと思います。
どちらかというとjavascript.jsに書かれているfeedlyのカウント取得の部分からカウント値を取得できないためクルクル回るスピナーが表示されていると思われます。autoptimizeやhead cleaner等のjavascriptをひとまとめにするようなプラグインを停止したり、キャッシュ系プラグインが入っていたら一旦停止して、キャッシュを削除などして様子を見てみて下さい。
chromeやfirefoxなどのモダンブラウザでf12キーよりweb開発環境のパネルが表示されます。ここのconsoleに表示されているエラー等から原因を探っていく必要があるかと思います。
マグさんの場合、スマホでは見れるということなのでSimplicity自体は正常に動作していると思われます。ブラウザの種類を変えてみたりしてどのようになるかが気になる所です。
カウントの原理としては、まずfont awesomeのスピナーが普通に表示されます。そこにjQuery等でそれぞれのSNSのカウント値(値自体はPHP等で取得している)をajaxで読み取り、読み取ることができたらfont awesomeのスピナーをカウント値で上書きしています。
なので、やまりんさんの場合は、PHPでカウント値が取得できていないか、ajaxによって取得したカウント値が表示できていないかが問題となっているようです。
マグさんの場合は、font awesome自体がPCで表示されていないので、これは何故表示されていないかがいまいち特定しきれません。
ただスマホで表示されているということから、PCのブラウザに問題があるように思うんですが、お二人共それぞれのサイトを見てみたわけではないので、あくまで想像でしか返答できません。Simplicity公式サイトは最新バージョンをほぼデフォルトで利用しているらしいので、公式にも問題がでていれば、feedly側(apiの仕様が変更された等)の問題と思うんですけれども、公式では問題なく表示されているようなので、各々の環境的なものかと思われます。
-
2015年10月29日 4:26 PM #33493マグゲスト
お返事遅くなりました。
ブラウザはクロームを使用していてIEに変えても症状は変わらずです。
他のPCを使用して確認してもダメでした。プラグインをすべて停止しても解決されません。
特殊な事はしていないつもりですが、気になる部分を書いてみますね。
●FC2ブログから引っ越してきたためパーマネントはカスタムで「/%postname%.html」にしています。
アドレスは独自ドメイン/blog-entry-100.htmlとなる設定です。
新規の記事も末番の数字を1ずつ増やしていく感じで投稿しています。●RSSはFC2時代は独自ドメイン/?xmlでした。
今は独自ドメイン/feed どの様です。
?xmlも使用したいためプラグイン「Redireciton」で独自ドメイン/feedへ転送しています。
このプラグインを停止してもダメでした。●最後にとても気になる点があります。
アドレスバーに独自ドメイン/feedを打ち込めば中身が見えます。
?xmlを打ちこむと転送されて独自ドメイン/feedとなり中身が見えます。livedoor rssにフィードを登録した場合ですが、
独自ドメイン/feedだとブログタイトルが空白で取得できないようです。
転送されてるはずの独自ドメイン/?xmlだと取得できます。この辺りが今回の原因に絡んでいる感じがします。
もし何かわかりましたらよろしくお願いいたします。 -
2015年10月30日 7:54 AM #33497Hidekichiゲスト
例えば urlencodeできるサイト を何かしらのタブに開いておいて、自身のサイトの右上にデフォルトなら表示されているrssのアイコンを右クリックして「urlをコピー」します。で、さっき開いておいたurlencodeのサイトにfeedのアドレスを入れてエンコードします。
■feedlyのapiアドレス
http://cloud.feedly.com/v3/feeds/feed%2Fこのアドレスに続いて、エンコードされたfeedのアドレスを付け加えます。
うちのサイトであれば以下のようになります。http://cloud.feedly.com/v3/feeds/feed%2Fhttp%3A%2F%2Fblazechariot.wp.xdomain.jp%2Ffeed
これをまた別のタブを開いて、直接apiを叩いてみます。
そうすると、{“id”:”feed/http://blazechariot.wp.xdomain.jp/feed”,”feedId”:”feed/http://blazechariot.wp.xdomain.jp/feed”,”language”:”ja”,”title”:”blazechariot -Xdomain-“,”velocity”:0.9,”subscribers”:4,”website”:”http://blazechariot.wp.xdomain.jp”,”description”:”Just another WordPress site”}
こういうのが出てくると思います。もし出てこない場合はfeed自体がfeedlyに登録できない形なんじゃなかろうかと思います。で、想像では上のはおそらく出てくると思うんですよ。スマホやらでは表示できるみたいなので。
feedlyに登録されていて、そのフィードのアドレスが取得できるなら(直接apiを叩いて情報が出るなら)、Simplicityのfeedly取得サーバー側スクリプトは動作していると想像できます。
しかし問題は、fontAwesomeのスピナーが出ないことなのです。真っ白と言うことはfeedly表示部は一応表示されていて、カウント値が表示されていないわけですよね?
もし仮にスクリプトに問題があって値が取得できていない場合は、fontAwesomeのスピナーがずっと回っているはずなのです。先のレスでも書きましたが、その回っているスピナーを取得したカウント値で上書きするのがSimplicityの仕組みです。もし仮に値が取得できない場合は0が表示されると思います。つまり、どういう状況であっても本来は数値かスピナーがそこにはあるはずなのです。
なので、そのアイコン部にスピナーが表示されない時があると考えるとそちらの方が問題に思います。
マグさんが「これっぽい」と思われている部分は、feedのアドレスの仕組みやリダイレクトなので、そこに問題がある場合は直接apiを叩いても
“subscribers”:カウント値
が取得できないはずです。しかしスマホやらでは表示されると考えるとそれはどのフィードアドレスかはわかりませんが何かしら動作しているわけです。つまりリダイレクトやアドレスの種類が異なったとしても動作しているわけですから、Simplicity本来の動作をすればスピナーか数値がfeedly部分に表示されるはずなのです。fontAwesomeのスピナーはいわゆるフォントアイコンです。デフォルトではspanタグによって埋め込まれているだけなので、他のSNSのアイコン等が表示されていたら必ず表示されているはず。それが無いと考えれば、Simplicityのfeedly取得PHPスクリプト(lib/fetch-feedly.php)にカウント取得失敗時の処理に不備があり、0が返ってきていない為「空白文字」が返ってきているのかも知れません。
lib/fetch-feedly.phpはsns.phpの中の関数、function fetch_feedly_count(){部分が動作しています。
$res = ($subscribers ? $subscribers : ‘0’);とあるように、$subscribersが真の時はその値、偽の時は0が返るようになっています。なのでここからもfeedlyの表示部分にはスピナーか0のどちらかが表示されるはずなのです。もし例外があると考えると、feedアドレス自体が取得できていないと普通なら思うわけですが、スマホではイケてると言うことなので、問題点が特定できないと僕は思ってしまうのです。
ひとまず1つずつ試していくしか無いかと思われますので、apiの状況はどうかと、そもそものfontAwesomeは表示されているか、またその表示される場所のセレクタは([span class=”social-count feedly-count”]カウント値[/span] ←〈〉で書くとspanが有効になってしまうので[]で書いてます)があるかどうか等を確認からでしょうか。
※カウント値の部分にはデフォルトでは[span class=”fa fa-spinner”][/span]みたいのが入っているかと思います。 -
2015年10月30日 12:07 PM #33500マグゲスト
詳しいお返事ありがとうございます。
直接APIを叩いてみました。
{“id”:”feed/htt という文字列が出てきて、subscribersで件数も取得出来ているみたいです。>>真っ白と言うことはfeedly表示部は一応表示されていて、カウント値が表示されていないわけですよね?
その通りです。
Twitter、はてぶ、google+などの他の吹き出し部分には数字は表示されています!>>その表示される場所のセレクタは([span class=”social-count feedly-count”]カウント値[/span] ←〈〉で書くとspanが有効になってしまうので[]で書いてます)があるかどうか等を確認からでしょうか。
すいません。
この部分がどこの場所にあるかが分かりませんでした。
lib/sns.phpの中にはなかったです。feedly関係の部分を張り付けておきますね。
//feedlyの購読者数取得
function fetch_feedly_count(){
$feed_url = rawurlencode( get_bloginfo( ‘rss2_url’ ) );
$res = ‘0’;
$subscribers = wp_remote_get( “http://cloud.feedly.com/v3/feeds/feed%2F$feed_url” );
if (!is_wp_error( $subscribers ) && $subscribers[“response”][“code”] === 200) {
$subscribers = json_decode( $subscribers[‘body’] );
if ( $subscribers ) {
$subscribers = $subscribers->subscribers;
set_transient( ‘feedly_subscribers’, $subscribers, 60 * 60 * 12 );
$res = ($subscribers ? $subscribers : ‘0’);
}
}
return $res;
}//不具合対策用のfeedlyの購読者数取得の別名
function get_feedly_count(){
return fetch_feedly_count();
}以上となります。
-
2015年10月30日 2:54 PM #33502Hidekichiゲスト
>[span class=”social-count feedly-count”]カウント値[/span]
これは、ブラウザでfeedlyのカウント表示部分を右クリックして「要素を調査(みたいなの)」から開くweb開発環境のパネルからhtmlの構造がどうなっているかを指しています。
流れとしては、
[span class=”social-count feedly-count”]
[span class=”fa fa-spinner”][/span] ←スピナーアイコン
[/span]jQuery(ajax)でカウント値取得してできたら、
[span class=”social-count feedly-count”]カウント値[/span]
こうなります。
-
2015年10月30日 10:03 PM #33505
-
2015年10月30日 10:43 PM #33506マグゲスト
追記です。
色々と設定を触って確認してみて分かった事があります。
ソーシャルボタンのタイプを変えてみました。・デフォルト(サービス固有のボタン)
・サイドに追従シェアボタンを表示
この2点のみカウントが空白で表示されていないです。■他のタイプは全部OKでした。
タイトル下にシェアボタンを表示
テーマカラータイプ(高速)
Twitterタイプ(高速)
バイラルタイプ(高速)
バイラル白タイプ(高速)もし原因が分からない感じでしたら、ボタンのタイプを変えることにしますね。
-
2015年10月31日 12:01 AM #33508Hidekichiゲスト
sns-buttons-default.phpの最後の方、
[span id=”feedly-count” class=”fdly-count”]
を
[span id=”feedly-count” class=”feedly-count”]
と修正したらどうでしょうか?
※〈〉は[]で書いてます。classの部分をfeedly-countにするだけです。もしこれが原因だとすれば、その内にわいひらさんが修正バージョンを出してくれるかと思います。
-
2015年10月31日 12:19 AM #33509Hidekichiゲスト
あ、これだけでは足らないかも。
けどここらと思うので朝方にもう一度検証してみます。 -
2015年10月31日 7:19 AM #33511Hidekichiゲスト
うまくいくかどうかは不明ですけれども
サンプル: 取得する関数を変えてみる | jsFiddle
※ fiddle画面でrunを押しても正しく動作しません
※ このフォーラムのcodeでソースを入れると管理人以外の投稿はエンティティされるので無理やりjsFiddle利用してます。まさかのデフォルトSNSボタンの利用だったので思いがけぬ所からやられたと言う感じでしたが、sns-buttons-default.phpのfeedlyのカウントを取得している関数(あるいは変数)を変更することで、関数自体がうまく読み込めればイケるんじゃなかろうかと思います。
-
2015年10月31日 7:28 AM #33512Hidekichiゲスト
おそらく、Simplicityのバージョン1.8後半だったか1.9あたりの時に、わいひらさんがfunctions.php(あるいは他のファイルも)を細分化してわかりやすくまとめたというようなことをどこかに書いていたかと思います。
その際に、元々取得していたfeedlyのカウント変数がどこかに行ってしまったか、うまく動作しないのが原因のように思われます。つまりはSimplicityのバグですかな。わいひらさんが復帰したらおそらく修正してくれるだろうと思いますので、しばらくは上記の方法で親テーマの該当ファイルを手動で修正しておいて下さい。
わいひらさんが修正完了したら今後のいずれかのバージョンでは対応されるはずですので、今回の親テーマ修正方法でもアップデート対応できるかと思います。
ただしそれまでに(この内容の修正以外で)何かしらのアップデートがあった場合は、再度親テーマ該当ファイルに同じくして自身で修正をしていただくような感じになるかと思います。アップデートのたびに修正するのが面倒だという場合は、ajaxによるカウント取得するタイプ(スピナーが回るタイプ)のSNSボタンを利用されるのが面倒くさくなく、また高速に動作するのでオススメです。
-
2015年10月31日 6:26 PM #33517マグゲスト
解決しました!
色々とありがとうございました![span id=”feedly-count” class=”fdly-count”]
↓
[span id=”feedly-count” class=”feedly-count”]この変更だけではダメでした。
fiddle画面のように以下へ変更したら解決しました。
<?php echo fetch_feedly_count(); ?>[span id=”feedly-count” class=”fdly-count”]のままでも問題なく動作している感じです。
ありがとうございました!! -
2015年11月13日 8:03 PM #33641わいひらキーマスター
マグさんご報告ありがとうございます。
hidekichiさんもありがとうございます。
おそらく、今回のバージョンアップで、不具合は修正できたかと思います。
http://wp-simplicity.com/simplicity1-9-1/
-
-
投稿者投稿
- フォーラム「Simplicityについての質問」には新規投稿および返信を追加できません。