Если форма реализована в виде сервиса - то всё становится довольно просто. Любой сервис имеет идентификатор и вся работа с сервисом идёт по этому идентификатору.
Таким образом задача сводится к тому чтобы подменить сервис с идентификатором нужной вам формы другим сервисом, выполняющим то что вам нужно.
Простейший вариант: сделать свой класс формы, наследованный от оригинала (который, естественно, в конечном итоге должен реализовывать
FormTypeInterface) и переопределить в нём метод
buildForm() на что-то вроде:
public function buildForm(FormBuilderInterface $builder, array $options)
{
parent::buildForm($builder, $options);
$builder->remove('nameOfTheFieldToRemove');
}
далее, в
config/services.yaml
вы просто регистрируете свой класс как сервис с идентификатором оригинального сервиса.
Ситуация может оказаться чуть сложнее в случае если оригинальный сервис формы не имеет публичного идентификатора. Маловероятно что такое произойдёт в случае формы, но если вдруг это так - нужно будет смотреть код формирования контейнера в целевом bundle и писать свой
compiler pass для внесения нужных вам изменений.