校正オプション

{var}[option]というように、変数の後に[]を記述して校正オプションを使用します。また、オプションはパイプ ( | ) を使用して複数指定することもできます。

仕様変更について

Ver. 3.1.7(v3.0.29・v2.11.58・v2.10.50)から変数の仕様が変更されております。
詳しくはこちらをご覧ください https://developer.a-blogcms.jp/blog/news/specifications-change-vars.html

旧バージョンの仕様変更について

日付の校正

wareki 日付から和暦の年を算出して表示します。
※{date}の中は、YYYY-mm-ddの書式の日付情報(例では1985-08-26)とします
例1:{date}[wareki] → 昭和60
例2:{date}[wareki('年m月d日')] → 昭和60年8月26日
age 日付を誕生日としたときの現在の年齢を表示します。
例) 1985/08/26[age] -> 23
date 日付を指定した形式で表示します。(PHP:date関数準拠)
半角英数をつなぎ文字に入れる際は、エスケープが必要です。
例1:1985/08/26[date('Y年n月d日')] -> 1985年8月26日
例2:1985/08/26[date('M d\t\h, Y')] -> Aug 26th, 1985
weekEN2JP 英字の週(Sunday, Monday...)を日本語に変換します。
日本語名はconfig.system.default.yamlの「week_label」を参照。
例1:{date#l}[weekEN2JP] -> 日

標準の校正

escape <, >, "といった文字を実体参照に変換します。
allow_dangerous_tag
Ver. 3.1.7〜
危険なタグ(script, iframeなど)の出力を許可します。
escvars ブレース({, })を実体参照に変換します。
escquot ダブルクオーテーション(")をエスケープ("")します。
nl2br 改行を<br />に変換します。
nl2br4html 改行を<br>に変換します。*php5.3以上でないと動きません
delnl
Ver. 2.5.0〜
改行コードを削除する。
list 行を<li>で囲みます。
definition_list 行を<dt>、<dd>で囲みます。行頭に#を付けると<dt>になります。
table 行を<tr>で囲み、さらにカンマを<td>で囲みます。 書き方は、エントリーのテーブル書式と同じです。
markdown マークダウン記法を使用します。
引数を指定して見出しレベルを調節することができます。
例:{text}[markdown(1)]
trim 文字幅を指定して足切りします。
例:{text}[trim(13, '...')]
mb_trim
Ver. 2.6.0〜
指定した文字数(マルチバイト対応)で足切りします。
例:{text}[mb_trim(13, '...')]
raw 校正せず、そのままのデータを出力します。
※校正オプションが何も指定されない場合には、デフォルトでescapeが指定されます。
number_format 数字を千位毎にカンマ区切りにします。
convert_bytes バイト数を(K: キロ, M: メガ, G: ギガ)の単位に変換します。
{pdf@fileSize}[convert_bytes('k', 0)] → KB単位で表示
{pdf@fileSize}[convert_bytes('m', 1)] → MB単位で小数第1位まで表示
{pdf@fileSize}[convert_bytes('g', 2)] → GB単位で小数第2位まで表示
striptags HTMLタグを取り除きます。
Ver.2.11以降をお使いの場合は raw と併用してください。(例:[raw|striptags])
base64 base64形式でエンコードします。
md5 ハッシュ値を算出します。
urldecode URLエンコードを元の文字列に戻します。
urlencode 文字列をURLエンコード(UTF-8)します。RFC3986準拠。 ※ 半角スペース → %20に変換 / 半角チルダ → 変換しない
html_entity_decode 実態参照を元の文字列に戻します。
trim4ext 変数から拡張子を除去します。
例:{entry_code}[trim4ext('.html')]
convert 文字列を変換して表示します。(PHPのmb_convert_kana関数に準拠)
例:{title}[convert('a')]
br4alnum 英数字が一定数連続するたびに、任意の文字列を挿入します。
例1:{text}[br4alnum('10')] 10文字ごとに<br />を挿入(デフォルトでbr)
例2:{text}[br4alnum('10', '­')] 10文字ごとに­を挿入(word-break: break-allの代替)
zero_padding 指定の桁数になるように、数字の左側を0(ゼロ)で埋める。
例:{number}[zero_padding('5')] 5桁になるように0で埋める 51 → 00051 に変換
substring
Ver. 3.0.0〜
文字列を好きな位置で切り抜きます。
{hoge} が abcdefg だった場合。
例1:{hoge}[substring(3)] 3文字目から最後までを切り抜きます。(defg)

例2:{hoge}[substring(2,3)] 2文字目から3文字切り抜きます。(cde)

例3:{hoge}[substring(-3)] 後ろから3文字目から最後までを切り抜きます。(efg)

例4:{hoge}[substring(-4, 2)] 後ろから4文字目から2文字切り抜きます。(de)

split 正規表現で文字列を分割し指定した順番の文字列を表示する。
例:{hoge}[split(',', 2)] カンマで分割して3番目を表示 a,b,c,d,e → c(添字は0から)
エスケープが必要な記号:@()[].{}*^$|+?-\(「\」または「¥」でエスケープ可)
例:{hoge}[split('\.', 2)](「.」をエスケープする場合)
contrastColor 指定色(Hex指定 例: #FFFFFF)に載せる文字色として、コントラストが高くなるように、黒系、白系のカラーを返します。

例: {color}[contrastColor] colorの色が濃い場合 #ffffff を返し、薄い場合 #000000 を返します。
例: {color}[contrastColor('#333')] 黒系のカラーの指定ができます。
例: {color}[contrastColor('#333', '#eee')] 黒系、白系のカラー指定をする場合。
entryStatusLabel
Ver. 2.11.37〜
eid(エントリーID)から下書き、非公開、承認中などのステータスを表示します。

ログインしている時に表示される「エントリーのステータス」はタイトル変数に入っているため「エントリーステータス」のみ表示したい時、使用できます。

使用例: 多言語サイトなどでは、メイン言語以外のタイトルをカスタムフィールドで出力する場合する場合が多いですが、この場合「エントリーステータス」がメイン言語以外で表示できないため、 この校正オプションを利用します。

例: {eid}[entryStatusLabel]
resizeImg
Ver. 2.6.0〜
指定したサイズで画像リサイズをします。
指定した横サイズよりも画像幅が小さい場合、横のリサイズはされません。
指定した縦サイズよりも画像高さが小さい場合、縦のリサイズはされません。
例:{image@path}[resizeImg(400,300)] 横400, 縦300でリサイズ。
例:{image@path}[resizeImg(400)] 横400 でアスペクト比を維持してリサイズ。
resizeImgFill
Ver. 2.6.1〜
指定したサイズで画像リサイズをします。
指定したサイズが実際の画像のアスペクト比と合っていない場合は、画像はトリミングされて表示されます。
例:{image@path}[resizeImgFill(400,300)] 横400, 縦300でリサイズ。アスペクト比が違う場合はトリミングされます。
resizeImgFit
Ver. 2.6.1〜
アスペクト比を維持したまま、指定したサイズで画像が入るようにリサイズをします。
例:{image@path}[resizeImgFit(400,400)] 横400, 縦400でリサイズ。指定したサイズよりも画像が大きく、アスペクト比が違う場合は、余白ができます。
例:{image@path}[resizeImgFit(400,300,'ff0000')] リサイズ後の余白の背景色を指定してリサイズ(jpegのみ)
getWidthFromRatio
Ver. 3.0.14〜
メディア画像アップロードに保存される変数 {xxxx@ratio} を元に、指定した画像の高さに対する幅を計算します。
例:<img src="%{MEDIA_ARCHIVES_DIR}{xxxx@path}" width="{xxxx@ratio}[getWidthFromRatio(150)]" height="150" alt=""> 高さ150pxのときの画像の幅を出力します
getHeightFromRatio
Ver. 3.0.14〜
メディア画像アップロードに保存される変数 {xxxx@ratio} を元に、指定した画像の幅に対する高さを計算します。
例:<img src="%{MEDIA_ARCHIVES_DIR}{xxxx@path}" width="150" height="{xxxx@ratio}[getHeightFromRatio(150)]" alt=""> 幅150pxのときの画像の高さを出力します
imageRatioSizeW
Ver. 2.11.13〜
画像URLを元に、指定した画像の高さに対する幅を計算します。
例:<img src="{image_path}" width="{image_path}[imageRatioSizeW(150)]" height="150" alt=""> 高さ150pxのときの画像の幅を出力します
imageRatioSizeH
Ver. 2.11.13〜
画像URLを元に、指定した画像の幅サイズに対する高さを計算します。
例:<img src="{image_path}" width="150" height="{image_path}[imageRatioSizeH(150)]" alt=""> 幅150pxのときの画像の高さを出力します
buildGlobalVars
Ver. 2.1.1〜
変数の中のグローバル変数を展開します。
buildModule
Ver. 2.1.1〜
変数中にあるモジュールを展開します。
buildTpl
Ver. 2.1.1〜
テンプレートエンジンを通し出力します。(グローバル変数やモジュールが解決されます)

旧バージョンの仕様変更について

Ver. 2.11.0 から校正オプションの仕様が変更されております。  詳しくはこちらをご覧ください。https://developer.a-blogcms.jp/blog/raw211escape.html

Ver. 2.10 以下のバージョンの場合に注意

校正オプションを何か一つ設定すると escapeが自動で指定されません。(Ver. 2.10 以下) エスケープが必要な場合は 必ずescapeをパイプで繋げて下さい。 校正オプションが何も指定されない場合には、デフォルトでescapeが指定されます。
例) {var}[escape|nl2br]