ショートコードの使い方

[ksdate] ショートコードの属性・オフセット・日付差計算について詳しく解説します。

このページのスクリーンショットと出力例は、2026年8月10日 に表示した場合のものです。日付や日付差は実行時に計算されるため、実際の表示は閲覧時点の値になります。

基本構文

[ksdate]

属性を指定しない場合、管理画面で設定したデフォルトフォーマット(初期値: Y年m月d日)で今日の日付が表示されます。

管理画面の「使い方」タブ

管理画面の「使い方」タブに表示される日付差分と unit 属性の解説
管理画面の「使い方」タブ。diffunit の書き方をここで確認できます

フロントエンド表示例

記事本文に埋め込んだショートコードが年数に置き換わって表示されている例
本文に WEBプログラマ歴[ksdate diff="1999"]の実績 と書いた箇所が、「WEBプログラマ歴27年の実績」として出力されます

属性一覧

属性 説明
format PHPの日付フォーマット文字列。省略時はデフォルトフォーマットを使用。例: Y年m月d日, Y/m/d
offset 今日の日付からのオフセット。+3d(3日後)、-1m(1ヶ月前)など。省略時はオフセットなし
diff 指定した日付から今日までの差分を計算。2020(年差)、2020-01(月差)、2020-01-15(日差)の形式に対応
unit 差分を返す単位。year / month / day(別名 y / m / d / / / ヶ月 / ヵ月 / ケ月 / )。指定すると数字だけを返します。省略時は基準日の精度で決まり、単位付きで出力されます

diff 属性と offset 属性を同時に指定した場合、diff が優先されます。

日付フォーマット(format属性)

format 属性にはPHPの date() 関数と同じフォーマット文字列を使用します。内部的には wp_date() を使用しているため、WordPressのタイムゾーン設定が反映されます。

記述例 出力例
[ksdate] 2026年08月10日(デフォルト)
[ksdate format="Y/m/d"] 2026/08/10
[ksdate format="Y-m-d"] 2026-08-10
[ksdate format="Y年m月"] 2026年08月
[ksdate format="Y"] 2026
[ksdate format="n月j日"] 8月10日

オフセット計算(offset属性)

offset 属性を使うと、今日の日付に対して加算・減算した日付を表示できます。フォーマットは [+-]数値[ymwd] です。

オフセット単位

記号 単位
y 年(years)
m 月(months)
w 週(weeks)
d 日(days)

オフセットの使用例

記述例 説明
[ksdate offset="+3d"] 3日後の日付
[ksdate offset="-7d"] 7日前(1週間前)の日付
[ksdate offset="+1m"] 1ヶ月後の日付
[ksdate offset="-1m"] 先月の日付
[ksdate offset="+2w"] 2週間後の日付
[ksdate offset="+1y"] 1年後の日付
[ksdate offset="-1y" format="Y"] 去年の年号(例: 2025)

「この記事は [ksdate] 時点の情報です」「キャンペーン期間: [ksdate][ksdate offset="+30d"]」のように活用できます。

日付差計算(diff属性)

diff 属性を使うと、指定した日付から今日までの差分を自動算出して表示します。経過年数・経過月数・経過日数の表示に活用できます。

diff属性のフォーマット

入力形式 デフォルト計算単位
YYYY(例: 2020) 年差(years)
YYYY-MM(例: 2020-01) 月差(months)
YYYY-MM-DD(例: 2020-01-15) 日差(days)

unit属性による単位の指定

unit を指定すると、基準日の精度に関係なく単位を選べます。このとき出力は数字だけになり、「歳」「年目」「ヵ月」など好きな表記を投稿側で書けます。

unit の値 返す値と別名
year 通算の年数。別名: y / /
month 通算の月数。別名: m / / ヶ月 / ヵ月 / ケ月
day 通算の日数。別名: d /

unit省略すると、基準日の精度で単位が決まり、単位の文字が付いた状態で出力されます(例: [ksdate diff="1999"]27年)。既存の記事はこの動作のままです。format は日付表示専用の属性で、diff を使うときは単位に影響しません。

過去と未来で丸め方が異なります

過去(経過時間)は完了した期間を数えるため切り捨て、未来(残り時間)は残っている期間を示すため切り上げになります。未来を切り捨てると、あと4ヶ月残っているのに「あと0年」と表示されてしまうためです。

すでに過ぎた日付を diff に指定すると、カウントダウンではなく経過期間が返ります。「まであと」という文面で使う場合は、基準日が未来であることを確認してください。

日付差の使用例

記述例 説明・出力例
[ksdate diff="2020" unit="year"] 2020年からの経過年数(例: 6)
[ksdate diff="2020" unit="month"] 2020年からの経過月数(例: 79)
[ksdate diff="2020" unit="day"] 2020年からの経過日数(例: 2413)
[ksdate diff="2020"] unit 省略時は基準日の精度で決まり、単位付きで返る(例: 6年)
[ksdate diff="2030" unit="year"] 未来の日付の場合も差分を計算。残り期間は切り上げ(例: 4)

出力されるのは数字だけです。単位は投稿側で書くため、「創業 [ksdate diff="1999" unit="year"] 年目」「[ksdate diff="1979-09-17" unit="year"] 歳」のように、歳・年・ヶ月・ヵ月・日目など好きな表記が使えます

実践的な使用例

記事の更新日表示

この記事は [ksdate format="Y年n月j日"] に最終確認しています。

出力例: この記事は 2026年8月10日 に最終確認しています。

キャンペーン期間の自動更新

期間: [ksdate] 〜 [ksdate offset="+14d"]

常に「今日から14日後まで」の期間が表示されます。

会社の創業年数

創業 [ksdate diff="2005" unit="year"] 年の実績

出力例: 創業 21 年の実績

年齢の表示

柏崎剛([ksdate diff="1979-09-17" unit="year"] 歳)

出力例: 柏崎剛(46 歳)

経過月数の表示

開業から [ksdate diff="2018-06" unit="month"] ヶ月が経過しました。

出力例: 開業から 98 ヶ月が経過しました。

ショートコードはHTMLソースにそのまま出力されるため、日付の値はページ表示のたびにサーバーサイドで計算されます。キャッシュプラグインを使用している場合は、キャッシュの有効期限に注意してください。