2013-04-06 2 views
4

Drupal 7 사이트의 mysite.com/user 사용자 계정 페이지에 두 개의 새로운 탭을 추가하려고합니다. 나는/사진 노드를 추가/사진을 추가 및 비디오 노드를 추가// 비디오를 추가 할 수있는 링크를 추가 할하지만 내 모듈 user_menu_add 다음 코드는 나를 위해 작동하지 않습니다 :사용자 정의 탭을 사용자 프로파일 페이지에 추가하십시오. Drupal 7

function user_menu_add_menu() { 

$items['node/add/photos'] = array(
    'title' => t('Add Photos'), 
    'page callback' => 'user_menu_add', 
    'page arguments' => array(1), 
    'access callback' => TRUE, 
    'access arguments' => array('access user menu add'), 
    'type' => MENU_LOCAL_TASK, 
); 

return $items; 

} 

내가 언급 한 예 것은 here 인 같이 작동하지만 단지 "/ 사용자"하위 디렉토리 아래의 링크

function my_module_menu() { 

$items['user/%user/funky'] = array(
    'title' => t('Funky Button'), 
    'page callback' => 'my_module_funky', 
    'page arguments' => array(1), 
    'access callback' => TRUE, 
    'access arguments' => array('access funky button'), 
    'type' => MENU_LOCAL_TASK, 
); 

return $items; 

} 

Current User Tabs

답변

6

을 위해 당신은 node/add/photos 메뉴 항목을 유지할 수 있습니다. 사용자 프로필 페이지에 탭을 표시하려면 user/%user/addphoto처럼 URL 패턴 서식을 유지해야합니다. 그러나 node/add/photos 페이지로 리디렉션하려면 새 메뉴 항목에서 drupal_goto()을 사용해보세요.

이 시도 :

$items['user/%user/addphoto'] = array(
    'title' => t('Add Photos'), 
    'page callback' => 'drupal_goto', 
    'page arguments' => array('node/add/photos'), 
    'access callback' => 'user_is_logged_in', 
    'type' => MENU_LOCAL_TASK, 
); 

참고 :

+0

당신을 감사해야합니다! 드루팔 (Drupal이 사용자 프로필 영역 밖에서 나를 제외하고 라우팅하지 않는 이유를 알 수 없었습니다! – DrCord

6

내가 닷컴에 충분한 명성을 답변. hook_menu번역되지 않은 제목을 필요로 지불 관심은 참으로 문서를 말한다 :

"title": Required. The untranslated title of the menu item. 

그래서 코드가

function my_module_menu() { 
    $items['user/%user/addphoto'] = array(
     'title' => 'Add Photos', 
     'page callback' => 'drupal_goto', 
     'page arguments' => array('node/add/photos'), 
     'access callback' => 'user_is_logged_in', 
     'type' => MENU_LOCAL_TASK, 
    ); 
    return $items; 
} 
+0

정확합니다. 특히 "title"로 주어진 값은 "title (t)()"(https://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/t/7) 기본값 인 "title callback"에 전달됩니다. . –

관련 문제