テンプレートで smarty 変数を使用するには?
- このフォーラムに新規トピックを投稿できます
- このフォーラムではゲスト投稿が許可されています
投稿ツリー
-
テンプレートで smarty 変数を使用するには? (OhYeah, 2010/8/22 17:59)
-
Re: テンプレートで smarty 変数を使用するには? (なーお, 2010/8/23 13:05)
-
Re: テンプレートで smarty 変数を使用するには? (OhYeah, 2010/8/23 22:28)
-
Re: テンプレートで smarty 変数を使用するには? (OhYeah, 2010/8/24 2:34)

ユーザ登録の件では、お手数をかけて申し訳ありませんでした。
d3diary のテンプレートを修正するのに、とりあえず管理人の表示だけ変更しようと思って下記のように書いても $xoops_isadmin が設定されていないため、もともとのテンプレートでしか表示されません。$xoops_isadmin を有効にするには、どうしたらよいのでしょうか?
1 2 3 4 5 |
|
P.S.
横スクロールバーが出る状態じゃないと、コードの行番号がうまく出ないのかな?

OhYeahさん、こんにちは。
$xoops_isadminは、本来は、xoopsコア側がセットすべき値と思います。 モジュール側で確実に使用したい場合のみ、モジュールでアサインしている場合もありますが。
また、ブロックではこの変数を利用できないこともあるようですので、念のため。
ちなみに、d3diaryでもモジュールがメインページに表示されている状態でしたら、$xoops_isadminで振り分けが可能でした。その他のsmarty変数も同様のはずです。(但し、私の使用環境の場合の話です。)
d3diaryでは、管理者権限かどうかの判定が必要な場面はほとんどなく、編集権限を有するかどうかで表示を切り替えており、これをモジュール側から$yd_editperm変数でアサインしています。(但し使用先は限定しています。)

う?ん、やっぱりモジュール側でアサインしないとダメなんですね…。preload.php あたりに書いておいてやれば、どこでも使えるのかな?
テンプレートを編集する場合、間違っていると表示そのものができなくなる可能性があるので、管理人だけ新テンプレートで、他のユーザは従来のテンプレートでという使い分けができると、とても便利なんです。
ブロックのテンプレートなら、複製したブロックにカスタムテンプレートを割り当てて、管理人だけ見えるようにしておくという手が使えます。が、ブロックじゃないテンプレートを編集したい場合は、それもできません。少なくとも、$xoops_isadmin だけはどこでも使えるとありがたいですね。

ブロックのテンプレートなら、複製したブロックにカスタムテンプレートを割り当てて、管理人だけ見えるようにしておくという手が使えます。が、ブロックじゃないテンプレートを編集したい場合は、それもできません。少なくとも、$xoops_isadmin だけはどこでも使えるとありがたいですね。
アホでした(^^;。ブロックのテンプレート以外なら、そのモジュールのページで使うテンプレートなので、$xoops_isadmin はいつでも使えるってことですよね。ブロックのテンプレートでも、そのモジュールにブロックを表示しているときは $xoops_isadmin が使えるので、そこで完成させてからトップページなりに表示するようにすれば良いと…。
まだ、XCL をインストールしてから2週間そこそこなので、いろいろと訳の分からんことを言うと思いますが、これに懲りずによろしくご指導をお願いします。