2010-05-21 39 views
1

我在使用Drupal 6.16:我想我有一個非常簡單的問題。我如何獲取當前用戶標識並將其放入菜單選項卡中。我想要發生的是當用戶登錄並想要更改他們的姓名,電子郵件等以單擊菜單選項卡。我形象它看起來像這樣:http://domain.com/user/ {用戶名} /編輯Drupal html用戶標識

在此先感謝! msindle

回答

2

這比您想象的更困難,因爲菜單項被緩存。沒有一種簡單的方法來創建包含用戶標識的動態菜單項。

可以做什麼,是寫一個自定義模塊並模仿'用戶'路徑的行爲。通過hook_menu的實現,您可以創建一個菜單項,並使用路徑'user/edit'(就像user_menu()創建$items['user'])。接下來,您創建菜單回調user_edit_page(),類似user_page(),它可以獲取當前用戶的ID和返回用戶編輯頁面:

function user_edit_page() { 
    global $user; 
    if ($user->uid) { 
    menu_set_active_item('user/'. $user->uid .'/edit'); 
    return menu_execute_active_handler(); 
    } 
    else { 
    return drupal_get_form('user_login'); 
    } 
}