簡単なオリジナルテンプレートタグの作り方

使い方は色々ですが、電話番号とかをオリジナルのテンプレートタグにしたり、長ぁ〜いテンプレートタグを短くしてみたり、お問い合わせ一覧出力するテンプレートタグをオリジナルで作れたりします。

まずは簡単に

function.php
[php]
/*でんわ番号 */
fudenction telcode(){
echo ‘TEL:0956-59-8587’;
}
[/php]

出力したいテンプレートに
[html]

<?php telcode();?>

[/html]


TEL:0956-59-8587
と出力されます。

実際に使ってるのがこれ
カスタムフィールドで商品価格のフィールドを作ってテンプレート上で消費税と3桁区切りで表示するコード

function.php

[php]
// 現在の日付を取得
$dt = new DateTime();
$dt->setTimeZone(new DateTimeZone(‘Asia/Tokyo’));
$today = $dt->format(‘Y-m-d H:i:s’);

// 消費税8%の施行日付を設定
$start_day = ‘2014-04-01 00:00:01’;
// 日付を比較
$tax = 1.05;//旧消費税率
if (strtotime($today) >= strtotime($start_day)) {
$tax = 1.08;//新消費税率
}

function fee($fee) {
global $tax;
$fee = $fee*$tax;
$oku = floor($fee / 100000000);
$man = floor(($fee % 100000000) / 10000);
$nokori = ($fee % 100000000) % 10000;
$result = ”;
if ($oku) $result = number_format($oku) . ‘<span class="toYenOku">億<span>’;
if ($man) $result .= number_format($man) . ‘<span class="toYenMan">万</span>’;
if ($nokori) $result .= number_format($nokori);
if($result):
echo ‘<span class="toYen">’.$result.'</span><span class="toYenYen">円</span>’;
endif;
}
[/php]

使いたいテンプレートで
カスタムフィールド item_price を $price として取得 テンプレートタグfree()にいれる
[html]
<?php $price = get_post_meta($post_id, ‘item_price’, $single); ?>
<?php fee($price);?>
[/html]

みたいな感じで桁区切りと消費税計算して表示出来るし、カスタムフィールドのitem_priceは文字列ではなく数値なのでitem_priceの値でソートしてクエリすることも可能。
ついでに、消費税が10%になっても大丈夫!