2015-12-23 69 views
1

我在Drupal 7的視圖的標題中放了一個「Global:link」。我想我可以把鏈接作爲html放在Global:文本區域中。 如果用戶不是管理員,我不希望他們看到此鏈接。所以,我試圖把我的主題這段代碼的template.php:如何在drupal 7的視圖中取消設置標題字段?

// hide global text area in view header if user is not admin 
function mytheme_views_pre_render(&$view) { 
    if ($view->name == 'taxonomy_term') { 
     dpm($view->name); 
     global $user; 
     // Check to see if $user has the administrator role or not. 
     if (!in_array('administrator', array_values($user->roles))) { 
       $header_item = $view->display_handler->get_option('header'); 
       dpm($header_item['link']); 
       unset($header_item['link']); 

    } 
     } 
    } 
} 

..但我怎麼在這個特定視圖的頭取消設置一個全球性的領域? 我上面的代碼沒有辦法。 任何幫助將不勝感激!

回答

1

已解決。我終於解決了它。這是片段。希望它能幫助有同樣問題的人。將「鏈接」更改爲您在標題中使用的任何項目:

function mytheme_views_pre_view(&$view, &$display_id, &$args) { 
    if ($view->name == 'taxonomy_term') { 
     global $user; 
     $new_item = $view->get_item('page', 'header', 'link'); 
     $new_item['text'] = ""; 
     // Check to see if $user has the administrator role or not. 
     if (!in_array('administrator', array_values($user->roles))) { 
      $view->set_item('page', 'header', 'link', $new_item); 
     } 
    } 
相關問題