プラスα空間

ブログ in お市 のーと

Feedzy RSS Feedsでローカルタイムを表示する機能が追加されました

Feedzy RSS FeedsでRSS Feed中の記事を表示されると、投稿日時がUTCで表示されます。これは、RSS Feedの日時は必ずUTCである必要があり、Feedzy RSS Feedsは、これをそのまま表示してしまうためです。

オリジナルの投稿日時は、次の通り、2017年1月26日 01時06分です。

投稿日時

これが、Feedzy RSS Feedsでは、UTC表示になってしまう為、次のように時差を含んだ9時間前の2017年1月25日 16時06分と表示されてしまいます。

UTC表示

投稿日時をローカルタイム、例えば日本標準時で表示するにはどうすれば良いかを調べていて、解決方法がわかりました。単純に、Feedzy RSS Feedsで時刻を取り出している部分(UTCのUNIX時刻)に、時差の時間の3600倍(60分×60秒)を足せば良いだけです。

時差を取り出す方法が、Wordpressに用意されている事を次のページで知りました。ありがとうございます。

時差には、3時間30分と言った、中途半端なものもあります。この場合でも、get_option(‘gmt_offset’)で時差を取り出せば3.5となるので、単純に3600倍で大丈夫です。

この方法を、お試しで、Feedzy RSS Feedsに実装した所、上手く行きました。この結果を持って、サポートフォーラムに投稿した所、既存の動作に影響が出ない形で実装されました。

新しいフック(フィルター)’feedzy_feed_timestamp’が追加され、ローカルタイムを計算して、その値を返す関数を追加できる様になりました。次のページに書かれている内容を、お使いのテーマのfunctions.phpに追加すればOKです。

この結果、日本標準時で投稿日時が表示される様になりました。

JST表示

Feedzy RSS Feedsの開発者にリクエストが受け入れられたのは、2回目です。嬉しいです。

[amazonjs asin="4798130931" locale="JP"]

コメントを残す