¿Cómo hacer que el formulario de contacto lateral (comentarios) se muestre individualmente en un bloque personalizado u otra página luego / contacto (por ejemplo, portada)?
He intentado este código, pero no funciona (¿son entidades de formularios de contacto?):
// 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
está en desuso a favor deentityTypeManager
( API docs )Respuestas:
El formulario de contacto es una entidad, pero no puede verlo.
En cambio, lo que desea es agregar una forma de un mensaje de contacto con forma de contacto como paquete.
Consulte
ContactController::contactSitePage()
(EDITAR: documentos de API ) como ejemplo:EDITAR (gracias @nilsun): tenga en cuenta que entityManager está en desuso a favor de entityTypeManager.
fuente
entityManager
está en desuso a favor deentityTypeManager
( documentos de API ) y faltan algunos enlaces aquí en la respuesta. En la respuesta dice: VerContactController::contactSitePage()
como ejemplo. ¿Dónde está? ¿Es una página de documentos en Drupal.org? ¿Es una función en el núcleo? ¿Cómo implementar esto en una función de preproceso ya que la pregunta era sobre .theme? Las cosas han cambiado a fines del año pasado y faltan informaciones sobre el núcleo D8 final con respecto a tales preguntas en la mayoría de las respuestas.