校正オプション
{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]