こんにちは。
まず、GoogleMapMakerの件ですが、さくらインターネットと
XREAにて以下を確認しました。
利用したGoogleMapMaker は、以下の「Version: 1.0c for ditto v2+」です。
http://modxcms.com/forums/index.php/topic,5798.75.html
これには、PHxファンクションで利用するためのPHxモデファイヤが必要になりますので、
それはスニペットで作ります。
このPHxファンクションがなぜ必要かというと、以下の制限を回避するためと思われます。
・ポップアップする説明をコンテンツに書くわけですが、この中で、「’」を使う場合は、必ず直前に「\」をつけなければらない
・また、ポップアップする説明を書くとき、改行せず1行にずらっとかかなければならない。
これは、JavaScriptを動作させる際の制限によるものと思われます。
リポジトリにおいてある「1c」は、上記の制限を受け、そのように書かないと、地図が表示されません。
また「1c」は、DittoパラメータがDittoV1ようのものになっています(実際は、Ditto2は、1のパラメータも
現時点ではサポートしているので動くんですが...)。
「Version: 1.0c for ditto v2+」では、Ditto2用にパラメータが変更され、また
上記のJSを動作させる際の制限を回避するためにPHxファンクションを導入しています。
というわけで、「Version: 1.0c for ditto v2+」では、ポップアップ用の説明を書く場合、
「’」の直前に「\」をつける必要もなく、また途中で改行しても問題なくなりました。
そして、PHxプラグインが必要かどうかですが、さくらインターネットとXREAの
環境では、必要ありませんでした。PHxプラグインがない状態でも、PHxモデファイアは、
機能しているようで(DittoのPHxファンクションを利用している?)、
「’」の直前に「\」をつけなくても、また途中で改行しても
動作に問題はないようです(でもまだすべてのパラメータを試したわけではないので
この結果がすべてではありませんが...)。以下は、PHxを導入していない状態のサンプルです。
http://www.liolion.net/g-map/
説明文は、途中に改行を入れ「’」の直前には「\」を入れていません。
ソースを見ると、それらの文字が「’」は「\’」に、改行(\n)は「半角スペース」に置き換わっているのがわかります。
GoogleMapMaker はいずれ、解説をアップできると思います。
次にXREAにおける、PHxプラグインの動作ですが。。
うちでは、現在のところ、問題なく動作しています。
GoogleMapMakarも、現在のところ、PHxプラグインが有効でも、無効でも、同じように動作しています。
うちのPHxプラグインは、ZeRoさんに改良していただいたもので、
ドキュメントやテンプレートごとにPHxの有効/無効を切り替えられる
というものです。一応、ソースを貼っておきますが、中心になる動作部分は
変更になっていないはずです。
/*####
#
# Name: PHx (Placeholders Xtended)
# Version: 2.1.2
# Author: Armand "bS" Pondman ([email protected])
# Date: Feb 13, 2007 8:52 CET
#
####*/
include_once $modx->config[’rb_base_dir’] . "plugins/phx/phx.parser.class.inc.php";
$e = &$modx->Event;
switch($e->name) {
case ’OnParseDocument’:
if (!strstr($modx->documentOutput,"donotphx")) {
$PHx = new PHxParser($phxdebug,$phxmaxpass);
$PHx->OnParseDocument();
}
break;
}
phx.parser.class.inc.php は、変更されていません。
nekoaibo さんのPHxに関するエラーは、すべてのページで起こるのでしょうか。
それとも、GoogleMapMaker コールをしてあるドキュメントを表示したときだけです?
もしそうだとすると、phx用に作成したモデファイヤも疑ってみるといいかも。。