ぐぬぬ

GETパラメータをMTの変数にセットしたい

0

お世話になります。

下記のようにGETパラメータを取得してMTの変数にセットしたいと考えております。

<mt:SetVarBlock name="area"><?php echo $_GET['area']; ?></mt:SetVarBlock>
<mt:If name="area" eq="日本">
日本
</mt:If>

インデックステンプレートにコードを記述して出力ファイル名を○○○.phpとして保存しましたが、うまく変数にセットできません。
当方、PHPしか使えないので、PHPを使って試みてみました。
PHP以外でも構わないのですが、GETパラメータをMTの変数にセットすることは可能でしょうか?

mtタグ内でのPHP使用につきまして
http://communities.movabletype.jp/2012/11/mtphp.html

上記の通り、PHPとMTタグの実行タイミングが違うということは承知しております。
改善策にはならないのかもしれませんが、モジュールの設定を「PHPのインクルード」に設定し、テンプレートモジュールを作成して、インデックステンプレートから読み込むようにしてみましたが、うまくいきませんでした;_;

ヒントでも結構ですので、ご存じの方いれば、教えてくださいm(__)m

返信(3)

| 返信する
  • >ぐぬぬさん
    こんにちは。

    MTタグが処理されるのは再構築の時点で、PHPが処理されるのはページにアクセスがあった時点なので、その方法では不可能です。

    PHPで書くなら、以下のような方法を取ります。

    • そのインデックステンプレートをダイナミックパブリッシングにします。
    • プラグインを作り、パラメータを変数に代入するような、ダイナミックパブリッシング用のテンプレートタグを追加します。
  • >壱様

    いつも回答ありがとうございます^^

    やはり、実行タイミングが違うんでPHPでは難しいんですね>

    解決策としては、ダイナミックで自作プラグインという方法なんですね。

    私にはハードルが高いですね^^;

    参考になりました。回答ありがとうございましたm(__)m

  • >壱様

    執筆された「MovableType5実践テクニック」を参考にプラグインを導入したら、GETパラメータを受け取ることができました^^

    検索機能を作るためにPHPでGETパラメータを取得しよとしていましたが、、PHPは使わずにプラグインで解決できました。

    ありがとうございましたm(__)m

返信する


カテゴリグループ

OpenID対応しています OpenIDについて