我是Drupal初學者。當用戶創建自己的帳戶時,他們可以選擇擁有個人聯繫表單。我在哪裏去禁用?它沒有權限。這不是一個糟糕的選擇,但我知道它會讓我的網站用戶感到困惑。它甚至可能嚇跑一些!如何在用戶編輯表單中禁用個人聯繫表單選項?
回答
如果您在Drupal 6或5訪問管理/建設/聯繫人/設置,您可以取消勾選「默認情況下啓用的個人聯繫表」
個人聯繫表單不是默認情況下在Drupal中獲得的。有模塊可以做到這一點,你可能已經激活了這樣一個模塊。檢查你在admin/build/settings中激活了哪些模塊。
如果您想爲常規用戶禁用此功能,則只需要檢查您的權限設置。
請檢查您在drupal上設置了哪些模塊,或者檢查聯繫表單的設置。我相信它可以選擇聯繫表單和用戶聯繫表單。
禁用「核心 - 可選」下的聯繫人模塊。通過用戶權限查看與「聯繫人」相關的任何內容並取消選中。
個人推薦Webform處理網站廣泛的聯繫表格。它會讓你用UI構建你的表單。獲取聯繫我們頁面的最簡單方法。
的Drupal 6:
如果你想擁有的站點範圍聯繫表格啓用,但即使不顯示選項個人聯繫表,您的用戶則必須按照下列步驟操作:
創建一個自定義模塊
http://www.hankpalan.com/blog/drupal/make-custom-drupal-module
這個代碼添加到.module文件:
功能your_module_name_form_user_profile_form_alter(& $形式,& $ form_state){
未設置($形式[ '接觸']);
}
測試在Drupal 7
將在您的template.php主題以下。將MYTHEME更改爲您的主題名稱。
function MYTHEME_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'user_profile_form') {
$form['contact']['#access'] = FALSE;
}
}
請注意,訪問設置爲false,而不是unset(),即刪除。這樣我們就不會干擾數據流。
的Drupal 7個
所有答案不是 「用戶/%/編輯」
刪除顯示(D7)個人接觸選項一節刪除Drupal 7的選項卡和設置:
/**
* Implements hook_form_alter().
*/
function MY_MODULE_form_alter(&$form, &$form_state, $form_id) {
if ('user_profile_form' === $form_id) {
$form['contact']['#access'] = FALSE;
}
}
/**
* Implements hook_preprocess_page().
*/
function MY_MODULE_preprocess_page(&$variables) {
$menu_items = menu_get_item();
if('user/%/edit' === $menu_items['path']){
$variables['page']['content']['content']['content']['system_main']['contact']['#access'] = FALSE;
}
}
後:
我的答案確實刪除了顯示的個人聯繫選項。檢查簡化模塊。它完全是你在form_alter中自定義的。 – milkovsky 2015-12-08 11:34:31
- 1. 如何在Outlook 2016中創建自定義編輯聯繫人表單?
- 2. 如何在SuiteCRM/SugarCRM中禁用單個記錄的編輯和內聯編輯
- 3. 如何使用單選按鈕禁用表單選項?
- 4. Ajax表單聯繫人(jQuery)
- 5. 如何在雙擊時禁用單元格可編輯選項
- 6. 用AJAX提交聯繫人表單
- 7. 使用Outlook聯繫人表單
- 8. 在Xcode中設置聯繫人表單
- 9. 聯繫表單7中的複選框可否被禁用?
- 10. 如何禁用編輯表單上的jqgrid選擇列表(下拉列表)
- 11. 如何使用表單在symfony 2中編輯用戶權限?
- 12. 用戶關聯模型如user.user_profile如何在設計編輯表單中更新?
- 13. ABPersonViewController聯繫人列表(編輯模式)
- 14. FormMail.pl 1.93多個URl聯繫人表單
- 15. 如何禁用jqgrid中發佈的行的內聯和表單編輯
- 16. PHP聯繫表單多個收件人,收件人列表取決於用戶選擇 - 複選框
- 17. 聯繫表格7:使用wpcf7_before_send_mail創建的鉤子僅用於一個聯繫人表單使用編號
- 18. 如何在插入聯繫人後禁用聯繫人顯示
- 19. 如何在表單提交中禁用打開新選項卡?
- 20. 在單個表中選擇個人2個用戶組?
- 21. 如何在編輯用戶表單中檢查權限?
- 22. 如何以編程方式禁用Outlook中的聯繫人編輯?
- 23. 如何在jqGrid中添加和編輯表單的不同編輯選項
- 24. 如何在PHP表單中設置用戶選擇的選項
- 25. 如何使用android studio從聯繫人列表中選擇聯繫人號碼?
- 26. 禁用內聯和單元格編輯,只允許在jqgrid中進行表單編輯
- 27. iOS - 可編輯的表單(聯繫應用程序樣式)
- 28. 用戶創建表單像iOS聯繫人創建
- 29. 如何從上下文菜單編輯聯繫人
- 30. 禁用列編輯datatables.js內聯編輯器選項卡列
我建議使用$ form ['contact'] ['#access'] = FALSE;而不是未設置($ form ['contact']);以防止它干擾核心。 – timofey 2012-10-02 18:31:12