2010-01-24 54 views
0

我試圖隱藏來自我的用戶的「修訂信息」,他們不明白與此內容類型有關的內容。我已經在網上閱讀了許多帖子,其中提到了將模板更改爲設置style =「display:none」的所有內容。我寧願實際上從訪問中刪除該字段,以便注入技術不可行。我通過創建一個設置爲$form['revision_information']['#access'] = false;hook_form_alter來完成此操作。我已經使用Firebug驗證過該方法確實被稱爲,但形式元素佔上風。有什麼想法嗎?提前致謝! Drupal的岩石!Drupal 6隱藏修訂信息

function recipe_form_recipe_node_form_alter(&$form, $form_state){ 
    if (isset($form['revision_information'])) { 
     $form['revision_information']['#access'] = FALSE; 
     firep(print_r($form['revision_information'],true)); 
     $form_state['rebuild'] = true; 
    } 
} 
+0

你按引用傳遞$形式? – googletorp 2010-01-24 10:21:45

+0

很奇怪你的form_alter不起作用,因爲表單api文檔和可能的帖子都說它應該。你能發佈完整的form_alter函數的代碼嗎? 請注意,您也可以使用正確的設置隱藏修訂信息;它只會顯示是否選中「創建新版本」選項,或者當前用戶是否具有「管理節點」權限。 – marcvangend 2010-01-24 10:24:58

+0

@googletorp是的。 – 2010-01-25 00:48:00

回答

3

報價marcvangend

請注意,您還可以隱藏與正確 設置 修訂信息;如果 「創建新的版本」選項 檢查,或者如果當前用戶具有 的「管理節點」權限

這很可能是最簡單的選項它纔會顯示。

注:維基答案,因爲它是不是我自己

0
/* Below code added by tejas tank , [email protected] 
    to disable the revision block from everywhere  
*/ 
function phptemplate_node_form($form) { 
    $form['revision_information']['#access'] = FALSE; 
    return theme_node_form($form); 
}