内蔵PHxで親リソースのpagetitleを表示させたい

質問全般・改善要望
返信する
アバター
min-o
メンバー
メンバー
記事: 324
登録日時: 2009年10月07日(水) 18:32

内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by min-o »

-----
ご利用のサーバ: さくらインターネット ビジネスプロ
MODXのバージョン:  1.0.6J-r8
PHPのバージョン:   PHP 5.2.17
MySQLのバージョン: 5.5.28-log
ブラウザ: firefox 17(win xp/mac)
-----

いつもお世話になっております。

以下のページを参考に

http://modx.jp/docs/tags/rv/
http://modx.jp/news/148.html
http://forum.modx.jp/viewtopic.php?p=4757

内蔵PHxで親リソースのpagetitleを表示させようとしているのですが、うまくいきません。

[*parent:pagetitle*]
[*parent:getfield=`[*pagetitle*]`*] 
の2つでやってみましたが、どちらも親リソースのidが出力されます。
(テンプレートにかいています)

[*createdby:userinfo=`fullname`*] 
[*createdon:date=`%Y年%m月%d日`*]
[*longtitle:ifempty=`[*pagetitle*]`*]
などはどれも、ちゃんと動いて望みどおりに出力されます。

なにか書き方が違うのでしょうか?
よろしくお願い致します。
---------
おのうちみん
http://scifitique.org/
http://gender-sf.org/
アバター
yama
管理人
記事: 3251
登録日時: 2009年7月29日(水) 02:50

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by yama »

http://130118174717-1949.evo.demo.modx.jp/manager/
http://130118174717-1949.evo.demo.modx. ... dable.html
上記、同じ1.0.6J-r8で試してみましたがこちらは出力できているみたいです。
何かプラグインなどの影響ということはないでしょうか?
アバター
min-o
メンバー
メンバー
記事: 324
登録日時: 2009年10月07日(水) 18:32

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by min-o »

プラグインをすべて停止して、チェックしてみたところ
phx  2.1.5 が問題でした。

プラグインのphxを停止すると
[*parent:pagetitle*] で親のページタイトルが出力されます。

なんでこれだけ、ぶつかるんでしょう…orz
プラグインのphxもたぶん、今後使うので停止は避けたいです。
---------
おのうちみん
http://scifitique.org/
http://gender-sf.org/
アバター
yama
管理人
記事: 3251
登録日時: 2009年7月29日(水) 02:50

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by yama »

phx.parser.class.inc.phpを見てみると
if ($st!=$et) $template = $this->Parse($template);
という行があるのですが、なんとなく自信なさそうな処理のように見えます。この行を削除するとどうなるでしょう?
アバター
min-o
メンバー
メンバー
記事: 324
登録日時: 2009年10月07日(水) 18:32

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by min-o »

返信遅くなり、すいません。
if ($st!=$et) $template = $this->Parse($template);
という行があるのですが、なんとなく自信なさそうな処理のように見えます。この行を削除するとどうなるでしょう?
やってみましたが、かわりませんです…。
---------
おのうちみん
http://scifitique.org/
http://gender-sf.org/
アバター
min-o
メンバー
メンバー
記事: 324
登録日時: 2009年10月07日(水) 18:32

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by min-o »

yamaさんの作っていただいたデモサイトはすでに消えていたので、
新たにでもサイト作ってみました。

http://130121101608-1949.evo.demo.modx.jp/
http://130121101608-1949.evo.demo.modx.jp/manager/
id modx
pass modx000

デフォルトでは [*parent:pagetitle*] は問題なのですが
phx 2.1.5プラグインを追加すると、やはりparentのidナンバーを出力しています。
※「新サービスのお知らせ (5)」に記述しました。
※if ($st!=$et) $template = $this->Parse($template); は有効のままです。
---------
おのうちみん
http://scifitique.org/
http://gender-sf.org/
アバター
yama
管理人
記事: 3251
登録日時: 2009年7月29日(水) 02:50

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by yama »

コード: 全て選択

$doc = $modx->getDocumentObject('id',$output);
return $doc['pagetitle'];
上記のようなスニペットを作って、スニペット名「phx:pagetitle」で保存してみてください
アバター
min-o
メンバー
メンバー
記事: 324
登録日時: 2009年10月07日(水) 18:32

Re: 内蔵PHxで親リソースのpagetitleを表示させたい

投稿記事 by min-o »

ありがとうございます。
スニペットで、無事表示できるようになりました。 :D

今度modxアップデートしたら、他のバージョンでも内蔵phxで試してみます。
---------
おのうちみん
http://scifitique.org/
http://gender-sf.org/
返信する