WordPress上でタイバーツから日本円へ自動計算して表示させるカスタマイズ方法

Pocket

タイ系のブログをやっている際にこんな事はありませんか?どこかの飲食店等の料金表記をした際に、「あれ?そういえば日本円だとどのくらいだっけ?」という事。

 

そして、googleだか、Yahooだかの為替レートを確認して、自分で計算を行いブログに300THB(約1000円)みたいに自力でブログ記事に入れちゃうやり方。

 

その時の確認したレートに左右されるので過去の古い記事とかは古いレートのままそのまま手付かず!なんて問題を解決しちゃおうというのが今回の趣旨です。計算もその都度いちいちめんどくさいですしね。

 

つまりやりたい事はバーツでWordpressの記事に入力したら自動的に円変換しちゃうショートコードが欲しい!という事で、頭の体操がてら導入してみました。

 

一応何回かに分けてサンプルコードを公開していこうと思います。

 

  1. wordpress内のデータベースにテーブルを作ってWordpress内で使えるショートコードを作成する
  2. WEBスクレイビングを使用して、外部から自動で一定の時間にレートを取得しよう
  3. WEBスクレイビングで取得したレートをデータベースに反映させよう。

 

とりあえず今回は変換ショートコードの実装を主軸に説明して行きます。

 

少なくとも手動で計算を行う必要はなくなるので、実装できる人は試してみてください。

 

I.Wordpressのデータベースに為替情報を格納する為の領域を作っておく


 

まずは準備編という事で将来的に拡張を考えて為替レートを保存しておくテーブルをWordpressのデータベース上に作成します。

 

作成を行う為にはまずは、自身がレンタルしている共用サーバーの管理画面phpMyAdminからログインをし、実装したいWordressのDBの中身を開いてください。

 

開いた後に一番下までスクロールしていくとテーブルを作成する項目があるので下記のように設定します。

 

名前:wp_custom_rate フィールド数: 4 と入力した後横の実行するでWordpressのデータベースにテーブルを作成します。

 

 

この時に注意したいのが、赤枠の部分と同じように種別を指定して、作成してください。

 

rate_id   INT
PRAIMARY を指定し、A_Iに必ずチェックを入れる。
(ここには連番の数字が入力してなくても自動で挿入されます。)

rate_per FLOAT
(ここには取得した来た為替レートが小数点付きで挿入されます。)

rate_country TEXT
(ここは別段必須ではありませんが、あるとのちのち役に立ちそうかなと)

rate_date DATETIME
(ここには入力を行なった最新の日付が挿入されます。)

 

項目を設定したら下の保存するボタンでテーブルを確定させます。

 

テーブルを作成した後は、【挿入】タブからテーブルに現在の為替レートを書き込みを行います。

 

rate_idのフィールドには値を入れなくても自動的に番号が連番で挿入されますので空でも問題ありません。rate_perにはタイバーツから日本円へと変換したレートをYahooファイナンス等のデータを元に挿入します。

 

YhaooファイナンスURL

 

rate_countryのフィールドにはとりあえず認識できればいいので、適度に返還後のJPYと入れておきましょう。

 

rate_dateとはその時の時間(厳密にしておきたいのであれば、yahooフィナンスの取得時間)を入れておくようにしましょう。

 

II.Wordpressのデータベース・テーブル作成が終わったらテーマファイルを編集する


 

使用しているテーマファイルのfunction.phpを開き、一番最後の部分に下記ソースコードを貼り付けてください。

 

 

もし、データベースを使用しないでfunction.phpだけでレートを自動変換して欲しいのであればこの上記のソースを少しいじるだけで対応可能です。

 

その場合データベースを絡めない書き方の場合は下記になります

 

 

変更点は$rateという変数を作成し、データベースから呼び出していたレートの部分$results[0]->rate_perを$rateに置き換えるだけで、function.phpのデータだけで自動でwordpress記事内のショートコードを変換してくれます。

 

III.為替レート変換ショートコードの使用方法


 

WordPress記事内で

 

少数点抜きで変換したデータを表示したい場合は[rate price=300]
少数点ありで変換したデータを表示したい場合は[rate price=1 real_rate=ON]

 

と入力すると下記のようなに出力されます

 

300฿ (約1,008円)
1฿ (約3.36円)

 

というわけで、今回は簡単にWordpress上で自分が計算しなくても勝手Wordpress上で自動計算してくれるようなそんなプログラムコードを紹介しました。

 

まだ、このプログラムには続きがあり、ここから自分で為替レートを手動で入れ替えるのではなくて自動で勝手やってくれるのはどうしたらいいのか?は次回以降書いて行きたいと思います。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA