Przez jakiś czas mnie to niepokoiło. Kiedy próbuję ukryć pola takie jak pole grupy odbiorców lub ustawienie publikowania przed formularzem, po sprawdzeniu poprawności zestaw obu pól ma wartość zerową, mimo że wartość defaut jako został poprawnie zadeklarowany.
Próbowałem użyć Invisible, #access, rozbroić ukryte, nic nie działa! Jest to bardzo kłopotliwe, ponieważ w moim obecnym projekcie użytkownicy mogą edytować tylko małe fragmenty swojego profilu w danym momencie, na przykład tylko adres lub zdjęcie, więc jeśli ukryję grupę odbiorców, użytkownik zostanie wyrzucony z grup, do których należy edytować.
Skończyło się na użyciu poniższego kodu, aby ukryć te pola, jednocześnie utrzymując użytkownika w grupie.
$variables['user_edit_about']['group_audience']= $temp['group_audience'];
$variables['user_edit_about']['group_audience']['#prefix'] = '<div style="display:none;">';
$variables['user_edit_about']['group_audience']['#suffix'] = '</div>';
Czy ktoś pomyślałby o lepszym sposobie osiągnięcia tego?
Dzięki