i.Design Studio | アイ・デザインスタジオ

アイ・デザインスタジオは日用品などのプロダクトデザインや、3Dデータの作成、グラフィックデザイン・ウェブデザインを手掛ける、福井県のデザイン事務所です。

【 WordPress 】 date_i18n関数 を使って、毎月1日の0時に月替わりのコンテンツを自動で差し替える、テーマファイルへの記述メモ

【 WordPress 】 date_i18n関数 を使って、毎月1日の0時に月替わりのコンテンツを自動で差し替える、テーマファイルへの記述メモ

クライアントワークでのご要望から。

WordPress でウェブサイトを構築し、例えばトップページなどの固定ページ内のコンテンツで、1月はこのコンテンツ、2月はこのコンテンツ~と、月ごとにコンテンツ(内容)を差し替えたい時の、テーマファイルへの記述方法です。

実際に運用中のウェブサイトを例に出しますが、弊社で手掛けた 敦賀市にあるお花屋さんフローリスト華えん 様のサイトで、トップページに「今月のオススメ花」という形で毎月替わりのコンテンツを表示しています。
こういった内容を、毎月1日の夜中~明け方に眠い目をこすりながら手作業で差し替えるのではなく、自動化したい場合に使えます。

お約束の様にグーグル先生に聞いてみると、あまりそういった需要が無いのか、目的に適うものは2件程度…

この中のフォーラムに掲載されていた方法を今回はトライ。

WordPressにおける条件分岐タグと「date関数」を使い、

  • 月を現すnの値が1であれば(1月の場合は)〇〇を表示する
  • nの値が2であれば(2月の場合は)〇〇を表示する

というものなのですが、実際に表示を確認してみると1日の0時ではなく9時ごろにコンテンツが差し替わっているようで、月の頭となる1日の0時からは9時間のタイムラグが生じています。
WordPressのタイムゾーンの設定で、日本(東京)でのタイムゾーンであるUTC+9(協定世界時+9時間)を設定していても、「date関数」ではUTC(協定世界時)である9時間ずれた値を取得してしまっている模様…

そこで WordPress Codex にもある「date_i18n関数」を使って書き換えます。

datedate_i18nへ書き換えただけと言えばそれだけなのですが、こちらをテーマファイル内のコンテンツを表示したい箇所に記述すると、毎月1日の0時に月替わりのコンテンツを表示する事が出来るようになります(もしもっと良い方法をご存知の方がいらっしゃったら、是非教えて下さい)。

冗長な書き方になってしまうので、より良い記述方法が無いかもっと勉強せねばなりません…


宜しければ是非お願いします :)

このエントリーをはてなブックマークに追加
follow us in feedly


コメントを残す

メールアドレスが公開されることはありません。