- modx-1.0.14J-r9-b25.zip
- (1.64 MiB) ダウンロード数: 852 回
1.0.14J-r9ベータです
Re: 1.0.14J-r9ベータです
ベータ25です。値が空の場合の内蔵PHx機能の処理を調整しました。if文などでPHxを活用している人は確認をお願いします。
Re: 1.0.14J-r9ベータです
b25アップデートしました。
問題ないです。ありがとうございます!
アップデートについて相談です。
テストサイトは1.0.14J → r7 → r9 へ
r9からはこまめに更新していったのですが、本番はいまだ1.0.14Jです。
本番をアップデートする際、いきなりr9のフィックス版へアップデートしてしまって大丈夫でしょうか?
テストサイトを1.0.14J → r7、→ r9にアップデートした時に、それぞれ一時的にデータベースが非常に遅くなったので、本番のアップデートを中止して1.0.14Jのままで運用していました。
この時の原因はわかりませんが、データベース再起動で直りました。その後再現していません。
今回のr9アップデートで、ひっかかったphxなど(phx内に[*content*]が2回で2度展開など)はテストの修正にあわせて、すべて本番サイトも修正してあります。
問題ないです。ありがとうございます!
アップデートについて相談です。
テストサイトは1.0.14J → r7 → r9 へ
r9からはこまめに更新していったのですが、本番はいまだ1.0.14Jです。
本番をアップデートする際、いきなりr9のフィックス版へアップデートしてしまって大丈夫でしょうか?
テストサイトを1.0.14J → r7、→ r9にアップデートした時に、それぞれ一時的にデータベースが非常に遅くなったので、本番のアップデートを中止して1.0.14Jのままで運用していました。
この時の原因はわかりませんが、データベース再起動で直りました。その後再現していません。
今回のr9アップデートで、ひっかかったphxなど(phx内に[*content*]が2回で2度展開など)はテストの修正にあわせて、すべて本番サイトも修正してあります。
Re: 1.0.14J-r9ベータです
基本的には最新でアップデートしていただいたほうがよいと思います。何か問題が発生した場合は、今回のようなケースなら、順番にr8・r7・r6と逆戻ししていくほうが問題の切り分けがしやすいかもしれませんが、できるだけ問題部分を直接修正します。
Re: 1.0.14J-r9ベータです
OnWebPagePrerenderイベントで追加されたMODXタグを処理できるようにしました。
内蔵PHxフィルターにおいて、判定モディファイアのみを記述した場合に1または0を判定結果として返すようにしました。
コード: 全て選択
<!--@IF:[*pagetitle:find(New)*]>
<h2>[新着] [*pagetitle*]</h2>
<!@ELSE>
<h2>[*pagetitle*]</h2>
<!@ENDIF-->
http://www.movabletype.jp/documentation ... modifiers/
その他、MovableTypeのモディファイアをいくつか採用しました。
Re: 1.0.14J-r9ベータです
rc3にしました。
内蔵モディファイアの「show」と「this」が使用できません。
phx.parser.class.inc.phpの該当箇所(226から230行目くらい)の最後にbreak;を追加したら機能しました。
内蔵モディファイアの「show」と「this」が使用できません。
phx.parser.class.inc.phpの該当箇所(226から230行目くらい)の最後にbreak;を追加したら機能しました。
コード: 全て選択
case 'show':
case 'this':
$conditional = implode(' ',$condition);
$isvalid = intval(eval("return ({$conditional});"));
if (!$isvalid) { $value = NULL;}
コード: 全て選択
case 'show':
case 'this':
$conditional = implode(' ',$condition);
$isvalid = intval(eval("return ({$conditional});"));
if (!$isvalid) { $value = NULL;}
break;
Re: 1.0.14J-r9ベータです
b25からrc3アップデート、問題ありません。
本番は最新でアップデートすることにします。
ありがとうございます。
本番は最新でアップデートすることにします。
ありがとうございます。
Re: 1.0.14J-r9ベータです
ありがとうございます、修正しました。masco さんが書きました:内蔵モディファイアの「show」と「this」が使用できません。
PHx機能を任意の文字列に対して直接適用できるようにしました。
コード: 全て選択
[+@test:strtoupper+]
コード: 全て選択
[+@2:username+]
コード: 全て選択
[+@2:lastlogin:dateformat(Y年m月d日 h時m分s秒):hanzen+]
コード: 全て選択
[+@test@example.com:spam_protect+]
コード: 全て選択
[+@abcdefghijklmnopqrstuvwxyz:shuffle:limit(8)+]
コード: 全て選択
[+@あいうえお<br />
かきくけこ<br />
さしすせそ:encode_html+]
デリミタ文字列[+@・+]はとりあえずの実装として、将来変更する可能性があります。
Re: 1.0.14J-r9ベータです
とりいそぎご報告させていただきます。
すべてのリソース変数を試したわけではないですが、
少なくとも[*description*]については、idモディファイアがおかしな挙動をします。b24までは大丈夫です。
◯1.[*pagetitle:8*]
×2.[*description:8*]
◯3.[*description@8*]
×4.[*description:id=8*]
×5.[*description:id=`8`*]
すべてのリソース変数を試したわけではないですが、
少なくとも[*description*]については、idモディファイアがおかしな挙動をします。b24までは大丈夫です。
◯1.[*pagetitle:8*]
×2.[*description:8*]
◯3.[*description@8*]
×4.[*description:id=8*]
×5.[*description:id=`8`*]
Re: 1.0.14J-r9ベータです
なるほど、isEmpty関数の処理対象にidモディファイアを追加する必要がありますね。後ほど修正します
Re: 1.0.14J-r9ベータです
もう一点、追加でご報告させていだきます。
<!--@IF:[*hoge*]-->
による条件分岐が効かなくなっているように見受けられます(そのままパースされている感じです)。
http://forum.modx.jp/viewtopic.php?f=34 ... =130#p8327
の記法も同様です。
例えば、Dittoテンプレ内で、としていたものは、
ブラウザでソースを確認すると、
のようになります。
とりいそぎ。
<!--@IF:[*hoge*]-->
による条件分岐が効かなくなっているように見受けられます(そのままパースされている感じです)。
http://forum.modx.jp/viewtopic.php?f=34 ... =130#p8327
の記法も同様です。
例えば、Dittoテンプレ内で、
コード: 全て選択
<!--@IF:[+hidemenu+]-->
<figure><img src="[+tv_img+]"></figure>
<!--@ELSE-->
<figure><a href="[~[+id+]~]"><img src="[+tv_img+]"></a></figure>
<!--@ENDIF-->
ブラウザでソースを確認すると、
コード: 全て選択
<!--@IF:0-->
<figure><img src="hoge"></figure>
<!--@ELSE-->
<figure><a href="hogehoge"><img src="hoge"></a></figure>
<!--@ENDIF-->
とりいそぎ。
Re: 1.0.14J-r9ベータです
http://forum.modx.jp/viewtopic.php?p=8327#p8327
ありがとうございます。@IF文は記述方法を変更したのですが、従来の書き方でも通用するように処理することは可能だと思います。後ほど修正します
ありがとうございます。@IF文は記述方法を変更したのですが、従来の書き方でも通用するように処理することは可能だと思います。後ほど修正します
Re: 1.0.14J-r9ベータです
yamaさま
申しわけございません。
部分的に新しい記法も試してみてダメだったので両方ダメなのかと思って投稿してしまいました。
1ページ内に新旧記法が混在していたためにおかしなことになっていたようです。新しい記法で統一したところ、大丈夫でした。
個人的には仕様「変更」でも構わないです。
とりいそぎ。
申しわけございません。
部分的に新しい記法も試してみてダメだったので両方ダメなのかと思って投稿してしまいました。
1ページ内に新旧記法が混在していたためにおかしなことになっていたようです。新しい記法で統一したところ、大丈夫でした。
個人的には仕様「変更」でも構わないです。
とりいそぎ。
Re: 1.0.14J-r9ベータです
ありがとうございます。
HTMLコメントの仕様は「<!」がコメント宣言とのことなので、もう少しよく考えて、最終的にこのようにしたいと思います。HTML的にはこの部分全体がコメント扱いとなることが分かりやすく、投稿画面でリッチテキストエディタを使う場合も問題が起こりにくいと思います。
コード: 全て選択
<!--@IF:[*isfolder*]>
フォルダです。サブリソースがあります。
<@ELSE>
フォルダではありません。
<@ENDIF-->
Re: 1.0.14J-r9ベータです
デモサイトに MODX 1.0.14J-r9-rc4 のパッケージを用意しました。
ご自由にお試しくださいー
http://mng.demo.modx.jp/pack_list/Evolu ... 9-rc4.html
尚、今まで公開していたベータ版のパッケージは全て公開終了しました。
ご自由にお試しくださいー
http://mng.demo.modx.jp/pack_list/Evolu ... 9-rc4.html
尚、今まで公開していたベータ版のパッケージは全て公開終了しました。
Re: 1.0.14J-r9ベータです
http://forum.modx.jp/viewtopic.php?p=8340#p8340
http://forum.modx.jp/viewtopic.php?p=8342#p8342
上記の件、対応しました。
PHxモディファイアを複数連結した場合、書き方によっては最後のモディファイアが実行されないことがあるため修正しました。
マルチバイト文字列を正しく処理できないPHxモディファイアが複数あるため修正しました。
MovableTypeのグローバル・モディファイアをいくつか採用しました。
今日の昼頃正式リリース予定です
Re: 1.0.14J-r9ベータです
rc3 → rc5 とアップデートしたところいくつかのページでエラーが出ました。
確認しましたがrc4ではでません。
エラーの出るページと同じテンプレートで、内容も同じような別ページではエラーになりません。
差はリソース名(ページタイトル)がかなり長いことくらいですが、リソース名を短くしても同じエラーでした。
エラーの出るページのテンプレートは階層化しているのですが、階層化なしのテンプレートに変更すると表示されます。
よろしくお願いします。
確認しましたがrc4ではでません。
エラーの出るページと同じテンプレートで、内容も同じような別ページではエラーになりません。
差はリソース名(ページタイトル)がかなり長いことくらいですが、リソース名を短くしても同じエラーでした。
エラーの出るページのテンプレートは階層化しているのですが、階層化なしのテンプレートに変更すると表示されます。
よろしくお願いします。
エラー
イベントID 34407
ソース Parser - $value = $this->$this->substr($
日付 2015/03/18 10:47:31
« MODX Parse Error »
MODX encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »
PHP error debug
Error : Object of class PHx could not be converted to string
ErrorType[num] : RECOVERABLE ERROR[4096]
File : /home/****/www/test02.****.co.jp/html/manager/includes/extenders/phx.parser.class.inc.php
Line : 348
Source : $value = $this->$this->substr($value,0,$limit);
Basic info
REQUEST_URI : /code/4544859788888/gamecard/
Resource : [983]pagetitle
Referer : http://test02.****.jp/manager/index.php?a=1&f=tree
User Agent : Mozilla/5.0 (Windows NT 6.1; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0
IP : 61.45.201.25
Benchmarks
MySQL : 0.0375 s (35 Requests)
PHP : 0.1896 s
Total : 0.2271 s
Memory : 11.77 MB
Backtrace
1 $modx->executeParser()
index.php on line 159
2 $modx->prepareResponse()
manager/includes/document.parser.class.inc.php on line 387
3 $modx->parseDocumentSource()
manager/includes/document.parser.class.inc.php on line 484
4 $modx->mergeDocumentContent()
manager/includes/document.parser.class.inc.php on line 2089
5 PHx->phxFilter()
manager/includes/document.parser.class.inc.php on line 1308
6 PHx->parsePhx()
manager/includes/extenders/phx.parser.class.inc.php on line 32
7 PHx->Filter()
manager/includes/extenders/phx.parser.class.inc.php on line 118
8 PHx->getValueFromPreset()
manager/includes/extenders/phx.parser.class.inc.php on line 157
イベントID 34408
ソース MODxMailer debug information
日付 2015/03/18 10:47:31
CharSet = ISO-2022-JP
Encoding = 7bit
mb_language = Japanese
encode_header_method = mb_encode_mimeheader
send_mode = mb
Subject = Error mail from =?ISO-2022-JP?B?GyRCJTUlJCVQITwlLCU4JSclQyVIGyhC?=
Date: Wed, 18 Mar 2015 10:47:32 0900
Return-Path:
From: =?ISO-2022-JP?B?GyRCJTUlJCVQITwlLCU4JSclQyVIGyhC?=
Message-ID: <258624eeb363863e036e073c93c5eac8@test02.****.co.jp>
X-Priority: 3
X-Mailer: PHPMailer (https://github.com/PHPMailer/PHPMailer/)
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=ISO-2022-JP
[URL] http://test02.****.co.jp/code/4544859788888/gamecard/
[Source] Parser - $value = $this->$this->substr($
[IP] 61.45.201.25
[Host name] 61-45-201-25.cust.bit-drive.ne.jp
Re: 1.0.14J-r9ベータです
http://forum.modx.jp/viewtopic.php?f=34 ... 8348#p8348
の件解決しそうです。
リソース名が非常に長いページはパンくずリスト用に
メニュータイトルに
[*pagetitle:limit=`35`*]…
または
[*phx:if=`[*pagetitle:len*]`:gt=`105`:then=`[*pagetitle:limit=`35`*]…`:else=`[*pagetitle*]`*]
といれてありました。
これを外したら、エラーなく表示されるようになりました。
TopicPath上で文字数制御ってできますか?
の件解決しそうです。
リソース名が非常に長いページはパンくずリスト用に
メニュータイトルに
[*pagetitle:limit=`35`*]…
または
[*phx:if=`[*pagetitle:len*]`:gt=`105`:then=`[*pagetitle:limit=`35`*]…`:else=`[*pagetitle*]`*]
といれてありました。
これを外したら、エラーなく表示されるようになりました。
TopicPath上で文字数制御ってできますか?
Re: 1.0.14J-r9ベータです
コード: 全て選択
[Source] Parser - $value = $this->$this->substr($
manager/includes/extenders/phx.parser.class.inc.php
上記ファイル内に$this->$this->substrという文字列があるはずなので、これを$this->substrに変更していただけますでしょうか?
Re: 1.0.14J-r9ベータです
余談ですが
上記の記述は
こう書くこともできると思います。
コード: 全て選択
[*phx:if=`[*pagetitle:len*]`:gt=`105`:then=`[*pagetitle:limit=`35`*]…`:else=`[*pagetitle*]`*]
コード: 全て選択
[*pagetitle:len:gt(105):then([*pagetitle:limit(35)*]):else([*pagetitle*])*]
コード: 全て選択
[*pagetitle:limit(35):setvar(短いタイトル)*]
[*pagetitle:len:gt(105):then([+短いタイトル+]):else([*pagetitle*])*]
コード: 全て選択
<!--@IF:[*pagetitle:len:gt(105)>
[*pagetitle:limit(35)*]
<@ELSE>
[*pagetitle*]
<@ENDIF-->
Re: 1.0.14J-r9ベータです
yamaさま
manager/includes/extenders/phx.parser.class.inc.php 修正でエラーはでなくなりました。
ありがとうございます。
にして、一部入れ替えてみました。うまくいっています。
現状個々のリソースのタイトルが長いものに手動で、メニュータイトルに入れているので、
TopicPathテンプレートの[+topics+]プレースフォルダか、TopicPathのパラメーターで設定できると便利だと思います。
manager/includes/extenders/phx.parser.class.inc.php 修正でエラーはでなくなりました。
ありがとうございます。
コード: 全て選択
[*pagetitle:len:gt(105):then([*pagetitle:limit(35)*]…):else([*pagetitle*])*]
現状個々のリソースのタイトルが長いものに手動で、メニュータイトルに入れているので、
TopicPathテンプレートの[+topics+]プレースフォルダか、TopicPathのパラメーターで設定できると便利だと思います。