답변:
블록 또는 블록을 추가하는 사용자 정의 모듈에서 다음 코드를 추가하십시오.
if (user_is_logged_in() == TRUE) {
global $user;
print "Welcome " . $user->name;
}
else {
print "Please log in.";
}
이것은 당신이 현재 사용자 정보를 원하는 경우 더 유용합니다. 아마도 이것은user_is_logged_in
기능에 대해서도 가능 합니다.
모듈 에서이 작업을 수행하려면 (블록에 PHP 코드를 추가하는 대신 권장되며 버전 제어가 아닌) 권장 작업을 수행 할 수 있습니다.
(이 경우이 모든 코드는 userwelcome이라는 사용자 정의 모듈에 들어갑니다.)
/**
* @file
* Adds a block that welcomes users when they log in.
*/
/**
* Implements hook_theme().
*/
function userwelcome_theme($existing, $type, $theme, $path) {
return array(
'userwelcome_welcome_block' => array(
'variables' => array('user' => NULL),
),
);
}
/**
* Implements hook_block_info().
*/
function userwelcome_block_info() {
// This example comes from node.module.
$blocks['welcome'] = array(
'info' => t('User welcome'),
'cache' => DRUPAL_CACHE_PER_USER,
);
return $blocks;
}
/**
* Implements hook_block_view().
*/
function userwelcome_block_view($delta = '') {
global $user;
$block = array();
switch ($delta) {
case 'welcome':
// Don't show for anonymous users.
if ($user->uid) {
$block['subject'] = '';
$block['content'] = array(
'#theme' => 'userwelcome_welcome_block',
'#user' => $user,
);
}
break;
}
return $block;
}
/**
* Theme the user welcome block for a given user.
*/
function theme_userwelcome_welcome_block($variables) {
$user = $variables['user'];
$output = t('Welcome !username', array('!username' => theme('username', array('account' => $user))));
return $output;
}
테마 에서이 블록의 테마를 재정의하려면 테마의 template.php 파일 에서이 작업을 수행하십시오.
/**
* Theme the userwelcome block.
*/
function THEMENAME_userwelcome_welcome_block(&$variables) {
// Return the output of the block here.
}
이 모듈은 사용자 정의 모듈이므로 모듈의 테마 기능을 직접 업데이트 할 수도 있습니다.
커스텀 모듈을 사용하지 않으려면 PHP 코드로 커스텀 블록을 만들고 이것을 추가하십시오 :
global $user;
// Only for logged in users.
if ($user->uid) {
print 'Welcome ' . theme('username', array('account' => $user));
}
theme_userwelcome
기능 theme_userwelcome_welcome_block
을 배치 해야합니다 . 아마도 함수를 실제로 호출하고 (예 : 테마의 이름이 대체되는 2 개의 테마 단어 ) 테마에 배치해야합니다 . 기능 을 유지 합니다. userwelcome
userwelcome_theme
userwelcome_theme_theme
hook
theme_userwelcome
userwelcome_block_view
userwelcome_block_info
userwelcome
뷰 모듈을 사용하십시오. 새보기 생성> 사용자 표시> 블록 표시. 상황 별 필터 추가> 기본 인수 제공> 로그인 한 사용자의 사용자 ID 원하는 텍스트 / 토큰 또는 사용자 프로필 필드를 포함하도록 필드를 구성하십시오 (결과를 다시 쓸 수 있음). 저장하고 지역에 블록을 추가하십시오.
하나의 모듈로 코드없이 완료
-lunk_rat