ページ 3 / 5
1.0.18Jベータです
Posted: 2016年12月07日(水) 15:45
by masco
yamaさま
ありがとうございます。
確認しました。
アップデート後、Dittoでしか確認していませんがテンプレート変数が表示されなくなりました。
プレースホルダが空になるようです。
[[Ditto?&parents=`7`&tpl=`@CODE:[+テンプレート変数+]`]]
1.0.18Jベータです
Posted: 2016年12月07日(水) 16:04
by yama
こちらで同じように試してみましたが、再現できませんでした。対象リソースに実際に割り当てられているテンプレート変数の値だけを取得するように調整したのですが、そのへんの処理が関係しているかもしれません。
そのへんの処理を元に戻しました。添付ファイルを解凍して assets/snippets/ フォルダに上書きすると元の状態に戻ります。(要キャッシュクリア)
これで特に問題なければ一日寝かせて明日あたり正式リリースしたいと思います
1.0.18Jベータです
Posted: 2016年12月07日(水) 16:53
by masco
ありがとうございます。
問題は解決しました。
しかし以前報告したモディファイアの問題が復活しました。
チャンクからDittoを読み込むと[+date:date('m/d')+]のようにモディファイアを通した値が表示されません。
チャンクから呼び出さずに直接書けば正常に表示されるので、ひとまずしのぐことはできます。
どうやらチャンクから呼び出したDittoで問題が起きています
内蔵もカスタムもモディファイアだけがだめなようです。
テンプレート変数は正常でした。
[[Ditto?
&parents=7
&depth=3
&display=5
&dateSource=`pub_date`
&orderBy=`pub_date DESC`
&hideFolder=1
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`]]
1.0.18Jベータです
Posted: 2016年12月07日(水) 19:52
by yama
そのへんはさわってないはずですが、変ですね、、バージョンはRC5のままですが、こちらを上書きしてみていただけますでしょうか?
1.0.18Jベータです
Posted: 2016年12月07日(水) 20:10
by masco
yamaさま
ありがとうございます。
上書きしましたが、同じ症状のままです。
モディファイアを外せば値は表示されるんですけどね・・・。
すみません、お願いします。
1.0.18Jベータです
Posted: 2016年12月07日(水) 21:17
by yama
一部のコードを元に戻してみました。もしこれで直る場合、想定外の動作をしている部分があることになりますが・・
http://forum.modx.jp/viewtopic.php?p=9244#p9244
こちらのRC4では問題ないでしょうか?
1.0.18Jベータです
Posted: 2016年12月07日(水) 21:43
by masco
yamaさま
RC4とRC6共に症状は改善されませんでした。
別件ですが
以前はログインできたのですが、Ironからフォーラムにログインできなくなっていました。
Firefoxからはログインできます。
1.0.18Jベータです
Posted: 2016年12月07日(水) 21:48
by yama
http://forum.modx.jp/viewtopic.php?p=9243#p9243
過去ログをよく確認してみましたが、解決したというのはこちらのRC3でしたね。調べてみます
Ironからログインできない件、後ほど調べてみます
1.0.18Jベータです
Posted: 2016年12月08日(木) 10:56
by yama
調べてみましたが、再現できません。もう少し何かヒントがあるとよいのですが
http://161208105321-31550.evo.demo.modx.jp/manager/
http://161208105321-31550.evo.demo.modx.jp/news/
こちらで同等の状況を作ってみました。不具合が発生する前なので、これは問題なく動作していますが。
チャンク「test」を作成し、リソースID2の中身を編集しました。テスト状況としてはこれで合ってますか?
1.0.18Jベータです
Posted: 2016年12月08日(木) 12:16
by masco
ありがとうございます。
用意していただいたデモでは問題が起きませんでした。
http://161208105321-31550.evo.demo.modx.jp/manager/
http://161208105321-31550.evo.demo.modx.jp/news/
現在RC6でキャッシュを無効にして試しています。
問題が起こるパターンがわかりました。
filterのパラメータで[[$_SERVER(REQUEST_TIME)]]を使用するのと[!Ditto!]が絡むと問題が起きるようです。
作成したテンプレート変数
テンプレート変数名 テスト
入力フォーム DateTime
プロセッサ Unixtime
下記が問題が起きたパターンです。
コード: 全て選択
[[Ditto?
&parents=2
&filter=`テスト,[[$_SERVER(REQUEST_TIME)]],6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`]]
[[Ditto?
&parents=2
&filter=`テスト,[!$_SERVER(REQUEST_TIME)!],6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`]]
[!Ditto?
&parents=2
&filter=`テスト,[[$_SERVER(REQUEST_TIME)]],6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`!]
[!Ditto?
&parents=2
&filter=`テスト,[!$_SERVER(REQUEST_TIME)!],6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`!]
[!Ditto?
&parents=2
&filter=`テスト,1481166013,6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`!]
この場合は正常に機能します。
コード: 全て選択
[[Ditto?
&parents=2
&filter=`テスト,1481166013,6`
&dateSource=`pub_date`
&tpl=`@CODE:<a href="[~[+id+]~]">[+date:date('m/d')+]:[+title+]</a><br>`]]
何か関係ありそうですかね?
よろしくお願いします。
1.0.18Jベータです
Posted: 2016年12月08日(木) 13:44
by yama
なるほど、不具合が2つありますね。後ほど修正します
1.0.18Jベータです
Posted: 2016年12月08日(木) 16:13
by yama
修正しました。値がセットされていないプレースホルダーに対して空の値をセットする処理があり、これがモディファイア処理を通じて結果的にプレースホルダー文字列ごと空になってました。
また、[[キャッシュ有効]]の中に[!キャッシュ無効!]をネストさせるのはもともと動作仕様が定まってなかったのですが、キャッシュ無効であることを無視して展開することにしました。
1.0.18Jベータです
Posted: 2016年12月08日(木) 16:41
by masco
yamaさま
ありがとうございます。
問題が解決されました。
1.0.18Jベータです
Posted: 2016年12月09日(金) 13:35
by yama
IF/ENDIF文のネストとアップデータに不具合があったため修正しました。万が一のことを考えてIF/ENDIF文のネストは10層までに制限しました。
おそらくこれが最終便になると思います
1.0.18Jベータです
Posted: 2016年12月11日(日) 22:40
by yama
Dittoのモディファイア処理とアップデータに不具合があったため修正しました。
(先ほど別トピックに添付したものと同じです)
1.0.18Jベータです
Posted: 2016年12月12日(月) 18:47
by noka
こんばんは。
環境依存かもしれませんが,
RC7->RC9へのアップデート,
ローカル環境へのRC9新規インストール(白紙・apacheログではmemoryが足りないと言われます)
のどちらも失敗します。
1.0.18Jベータです
Posted: 2016年12月12日(月) 19:55
by yama
1.0.18Jベータです
Posted: 2016年12月13日(火) 05:54
by ryocka
おはようございます。
クォートの使い分けは特に意識する必要はないと思います。
万が一のことを考えてIF/ENDIF文のネストは10層までに制限しました。
仕様についてのご説明、ありがとうございました。
クォート無しの挙動が旧ベータ版と異なるようですので念のためにご報告いたしました。
こちらも、解決しました。ご対応ありがとうございました。
Github develop版で動作確認しましたが、Dittoテンプレートで以下のような場合、無条件にTVのプレイスホルダーが非表示になるようです。
(括弧の中の[+tv+]とタグ等を併記する場合も、括弧内が丸ごと表示されません)
コード: 全て選択
[+tv:ifnotempty([+tv+])+]
1.0.18Jベータです
Posted: 2016年12月13日(火) 11:37
by yama
1.0.18Jベータです
Posted: 2016年12月13日(火) 14:54
by masco
おそらく不具合です。
関連付けられていないテンプレート変数のタグを入力し
モディファイアを使用しているとそのままの文字列が表示されます。
テンプレート変数はテンプレートに関連付けていません。
下記を記述すると
[*tv:find(`aaaa):then(`aaa/bbb/[*tv*]`):else(`[*tv*]`)*]
下記のように表示されます
[*tv:find(`aaaa):then(`aaa/bbb/[*tv*]`):else(``)*]
それに関連して条件分岐も機能していないようです。
下記のように記述すると
<!--@IF:[*tv*]>
[*tv:find(`aaaa`):then(`aaa/bbb/[*tv*]`):else(`[*tv*]`)*]
<@ELSE>
なし
<@ENDIF-->
下記のように表示されます
[*tv:find(`aaaa):then(`aaa/bbb/[*tv*]`):else(``)*]
関連付けられていないと空の扱いでfalseになると思っています。
テンプレートに当該テンプレート変数を関連付けると正常に動作しますので、
値が空かどうかは関係ないようです。
よろしくお願いいたします。