Jestem początkującym Drupalem. Gdy użytkownicy tworzą swoje konto, mogą skorzystać z osobistego formularza kontaktowego. Gdzie mam go wyłączyć? Nie ma uprawnień. To nie jest zła opcja, ale wiem, że będzie to dezorientować użytkowników mojej witryny. Może nawet wystraszyć niektóre!Jak wyłączyć formularz osobistego formularza kontaktowego w formularzu edycji użytkownika?
Odpowiedz
Jeśli wizyta admin/budowy/Kontakt/ustawienia w Drupal 6 lub 5 można odznacz „Włącz prywatnego formularza kontaktowego domyślnie”
Osobisty formularz kontaktowy nie jest domyślnie dostępny w Drupal. Istnieją moduły, które mogą to zrobić, prawdopodobnie aktywowałeś taki moduł. Sprawdź, jakie moduły aktywowałeś w admin/build/settings.
Jeśli chcesz wyłączyć to tylko dla zwykłych użytkowników, powinieneś sprawdzić ustawienia uprawnień.
Sprawdź, jakie moduły ustawiłeś na drupalu, lub sprawdź ustawienia formularzy kontaktowych. Uważam, że ma opcję formularza kontaktowego dla całej witryny i formularza kontaktowego użytkownika.
Wyłącz moduł Contact w opcji Core - Optional. Przejrzyj uprawnienia użytkownika dla wszystkiego, co dotyczy "kontaktu" i odznacz je.
Osobiście polecam formularz internetowy do obsługi formularzy kontaktowych w całej witrynie. Umożliwi ci to skonstruowanie formularza za pomocą interfejsu użytkownika. Najprostszy sposób na uzyskanie strony Kontakt.
Drupal 6:
Jeśli chcesz mieć w całej witrynie Formularz kontaktowy włączona, ale nie nawet wyświetlić opcję osobistego formularza kontaktowego dla użytkowników należy wykonać następujące kroki:
Utwórz moduł niestandardowy
http://www.hankpalan.com/blog/drupal/make-custom-drupal-module
Dodaj ten kod do swojej .module pliku:
funkcja your_module_name_form_user_profile_form_alter (& $ forma, & $ form_state) {
rozbrojony ($ form [ 'kontakt']);
}
Testowany w Drupal 7.
miejsce następujące w template.php Twojego tematu. Zmień MYTHEME na swoją nazwę motywu.
function MYTHEME_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'user_profile_form') {
$form['contact']['#access'] = FALSE;
}
}
Należy zauważyć, że dostęp jest ustawiony na wartość false, zamiast być usuwany(), tj. Usuwany. W ten sposób nie ingerujemy w przepływ danych.
Drupal 7
Wszystkie odpowiedzi nie usunąć sekcję dla opcji osobistego kontaktu wyświetlany (D7) na "użytkownika /%/edit"
Dla Usuń zakładka i ustawienia dla Drupala 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;
}
}
Po:
Moja odpowiedź usuwa sekcję z opcją osobistego kontaktu wyświetlaną. Sprawdź moduł upraszczający. Robi to dokładnie to, co zrobiłeś tutaj niestandardowo w form_alter. – milkovsky
Zastosowanie Contact permissions. Zapewnia uprawnienia:
„posiada prywatnego formularza kontaktowego”, który pozwala administratorom konfigurowanie które role uzyskać zdolność do posiadania „Osobiste formularza kontaktowego” .
Również moduł Simplify ma osobną opcję.
- 1. Jak ukryć określone pola w formularzu edycji użytkownika w Drupal?
- 2. Jak przekazywać wartości z jednego formularza formularza kontaktowego 7 do drugiego w Wordpressie?
- 3. zmienić układ kolumn formularza kontaktowego w Magento
- 4. Zagraj w formularzu formularza problemów
- 5. Zaokrąglony dziesiętny w formularzu edycji Symfony2 + Doctrine2
- 6. PHPMailer v. Mail() dla prostego formularza kontaktowego
- 7. Wyślij email php z formularza kontaktowego
- 8. Jak wysłać pocztę za pośrednictwem C# ASP.NET do formularza kontaktowego
- 9. Szyny 5 - jak dynamicznie dodawać zagnieżdżone pola w formularzu edycji?
- 10. Jak wyłączyć wszystkie formanty w formularzu za wyjątkiem przycisku?
- 11. Jak zaktualizować obiekt z formularza edycji w Django?
- 12. Jak wyłączyć stronę/formularz w JSF
- 13. Wyłączyć token CSRF na formularzu logowania
- 14. ShowDialog() Nie pokazano formularza na głównym formularzu
- 15. Jak wprowadzić przycisk Wyślij w formularzu
- 16. Czy mogę stwierdzić, czy formularz jest formularzem "edycji" w szablonie?
- 17. Formularz kontaktowy w SiteFinity C#
- 18. Kliknięcie w formularzu C#
- 19. szyfrowanie formularza kontaktowego php z moim kluczem publicznym
- 20. Dostosowany szablon formularza edycji Zręczność w Plone?
- 21. Jak edytować szeregowane hashy Rails w formularzu?
- 22. Otwieranie formularza dziecka z innego formularza dziecka i ustawianie MDI na formularzu rodzica - jak to zrobić?
- 23. wyłączyć ponowne sortowanie w angularJS podczas edycji
- 24. Jak korzystać z formularza kontaktowego Wordpress 7 w moim własnym kodzie HTML?
- 25. AngularJS - Jak wyłączyć formularz podczas przesyłania?
- 26. Używanie jQuery Fancybox lub Lightbox do wyświetlania formularza kontaktowego
- 27. Formularz obsługi formularza odpowiedzi prześlij
- 28. Formularz błędu asp.net nie może zostać zagnieżdżony w formularzu elementu?
- 29. Jak dodać klasę w formularzu formularza yii Prześlij
- 30. Formularz edycji edytora Sonata wiele do wielu nie działa - symfony2.1.6
Radzę użyć $ form ['contact'] ['# access'] = FALSE; zamiast unset ($ form ['contact']); aby zapobiec zakłóceniu rdzenia. – timofey