ページ 11

カスタム変数の規定値で@Bindingsが使用できない

Posted: 2015年2月22日(日) 13:28
by masco
-----
ご利用のサーバ:ファイアバード
MODXのバージョン:1.0.14J-r9b16
PHPのバージョン: 5.4.35
MySQLのバージョン:5.0.95
ブラウザ:Firefox
-----

カスタム変数の規定値に、
このフィールドはアットバインド(@CHUNK, @DOCUMENT, @EVAL, @SELECT, @FILE, @INHERIT, @DIRECTORY, @NONE)を使って各種のデータソースから値を代入できます。
とありますが、入力した「@〜」のまま表示されます。

過去のバージョンでも同様でしたのですが、 使用できないものなのでしょうか?
オプションの方は問題なく利用できます。

Re: カスタム変数の規定値で@Bindingsが使用できない

Posted: 2015年2月22日(日) 15:12
by yama
使用できません。@Bindings文字列そのものが既定値として保存されます。いっけん分かりにくいですが、この仕様のために、既定値そのものをいつでも自由に変更できるというメリットがあります。ここに「各種のデータソースから値を代入できます」と書いてあるのは誤っていますので、後ほど変更しておきます。基本的に@Bindingsはページ出力時に処理される仕組みになっています。

コード: 全て選択

@@EVAL:
return date('m月d日');

コード: 全て選択

<?php
return date('m月d日');
@EVALに関しては、上記のように書くと処理結果が投稿画面に表示されます。
また、カスタムフォームを作成して[*変数名*][[スニペットコール]]{{チャンク名}}などと書いても、処理結果を投稿画面に表示することができます。

Re: カスタム変数の規定値で@Bindingsが使用できない

Posted: 2015年2月22日(日) 15:37
by masco
yamaさま

ありがとうございます。
yama さんが書きました:基本的に@Bindingsはページ出力時に処理される仕組みになっています。
これで使い方がやっとわかりました。

Re: カスタム変数の規定値で@Bindingsが使用できない

Posted: 2015年2月23日(月) 12:25
by noka
便乗して報告させていただきます。
yama さんが書きました: また、カスタムフォームを作成して[*変数名*][[スニペットコール]]{{チャンク名}}などと書いても、処理結果を投稿画面に表示することができます。
上記ですが、
カスタムフォームを設定したテンプレート変数を利用しているテンプレートでは、
(なぜか)公開日と非公開日の表示形式がUnixTime形式になってしまう不具合があるようです。
http://150223122406-16138.evo.demo.modx.jp/manager/

Re: カスタム変数の規定値で@Bindingsが使用できない

Posted: 2015年2月23日(月) 12:57
by yama
http://150223122406-16138.evo.demo.modx.jp/manager/
ありがとうございます、修正しました