Posted by bzj00220 on October 8, 2013 at 2:14am
特定の役割のユーザーのプロフィールページにだけブロックを表示させたい
ある専門家のポータルサイトを運営しております。
ユーザーには専門家も登録されていますが、一般のかたも登録されています。
それぞれに役割は別にしています。
専門家のプロフィールページにだけ表示させたいブロックがあるのですが
どのようにしてよいのかわからないので教えて下さい。
ブロックの表示の設定とかコンテキストでいろいろと試してみたのですが、うまく設定できませんでした。
ブロックもコンテキストも見ている人の役割によって制限することはできるのですが、表示されている人の役割で設定することはできないようです。
ブロックの表示の設定のところで
「以下のPHPコードがTRUEを返す場合のみ(上級者向け)」
というのがあるのでPHPのわかる人ならきっと設定できると思います。
私の場合はPHPがわからないのでどうしたら良いのかわかりません。
もし、よろしければどのように設定すればよいのか教えていただければ幸いです。
Comments
ブロックもコンテキストも見ている人の役割によって制限するこ
ブロックは確かにそうですね。次のコードを試してください。
<?php
$args = arg(NULL, current_path());
if ($args[0] == 'user' && is_numeric($args[1])) {
$account = user_load($args[1]);
// 「専門家」ユーザーロールの rid を 5 とすると、
if (isset($account->roles[5])) {
return TRUE;
}
}
?>
Drupal カスタマイズTips 更新中...
CMS自由自在!
http://customfield.jp/
ありがとうございました。
試してみたところ、ちゃんと動作しております。
ありがとうございました。