Como obter o formulário de contato lateral (feedback) individualmente exibido em um bloco personalizado ou em outra página / contato (por exemplo, página inicial)?
Eu tentei esse código, mas ele não está funcionando (são entidades de formulários de contato?):
// get default form
// get the entity object
$default_form = \Drupal::config('contact.settings')->get('default_form');
$entity = \Drupal::entityManager()->getStorage('contact_form')->load($default_form);
// get view builder
// render view
$view_builder = \Drupal::entityManager()->getViewBuilder('contact_form');
$full_output = $view_builder->view($entity);
entityManager
é substituído em favor daentityTypeManager
( documentação de API )Respostas:
O formulário de contato é uma entidade, mas você não pode visualizá-lo.
O que você deseja é um formulário de adição de uma mensagem de contato com formulário de contato como pacote configurável.
Veja
ContactController::contactSitePage()
(EDIT: documentos da API ) como exemplo:EDIT (obrigado @nilsun): observe que entityManager está obsoleto em favor de entityTypeManager.
fonte
entityManager
foi preterido em favor deentityTypeManager
( API docs ) e alguns links estão ausentes aqui na resposta. Na resposta, declara: VejaContactController::contactSitePage()
como exemplo. Cadê? É uma página de documento no Drupal.org? É uma função no núcleo? Como implementar isso em uma função de pré-processo, já que a pergunta era sobre tema. As coisas mudaram no final do ano passado e faltam informações sobre o núcleo final do D8 sobre essas questões na maioria das respostas.