アクション・テンプレート更新系APIにおける利用を推奨されない値
Summary
アクション・テンプレート更新系APIにおけるcontent は、 html style scriptといった、配信に直接使われる値のみを管理対象とし、それ以外の値 source_html less source_scriptや variablesは管理対象としないことを強く推奨します。
解説
アクションエディタで表示され、ユーザーが編集するhtmlやCSS、Javascriptと、実際にウェブサイト上で配信されるコードには差分が存在します。
実際にウェブサイト上に配信されるコードは、アクションエディタ上で編集した値に下記のような変換を行ったものです。
※ 上記は一例です。
アクションエディタ上で保存ボタンを押すと、下記の表の左側の値が、上記のような変換の後に右側の値としてアクションに保存されます。
| アクションエディタで編集する値 | 実際に配信に使われる値 |
|---|---|
| content.source_html | content.html |
| content.less | content.style |
| content.source_script | content.script |
しかし、API v2ではsource_html→ htmlのような変換機構を備えていません。
そのため、例えばsource_html及びvariablesだけに下記のような変更を行っても
<div>#{ label1 }</div>{
"variables": [
{
"name": "label1",
"value": "変更後の値"
// その他の値省略
}
]
}htmlを直接更新しない限り、配信されるコードは変更されることがありません。
そのため、変数展開をユーザー自身で行う、あるいは、そもそもvariablesを利用せず、直接 htmlなどを管理することを強く推奨します。
CSSのモジュール化に関しても同様で、ウェブサイト上でのセレクタ衝突防止はユーザー側でセレクタを工夫し、行ってください。