it-swarm-es.com

¿Cómo cargo una biblioteca definida con hook_library () en páginas de nodo / edición?

He definido una biblioteca de archivos JavaScript y archivos CSS necesarios para que mi módulo funcione usando hook_library().

¿Cómo hago para cargar esta biblioteca en páginas de edición/nodo?

2
Camsoft

Llamaría a drupal_add_library() en una implementación hook_form_alter() , como esta:

function MODULE_form_alter(&$form, &$form_state, $form_id) {
  if (isset($form['#node_edit_form']) && $form['#node_edit_form') {
    drupal_add_library('MODULE', 'LIBRARY');
  }
}

Esto debería garantizar que la biblioteca se cargue siempre que se muestre un formulario de nodo.

Y usando sugerencias de Berdir para usar hook_form_BASE_FORM_ID_alter y de kiamlaluno para usar #attached :

function MYMODULE_form_node_form_alter(&$form, &$form_state) {
  $form['#attached']['library'][] = array('MODULE', 'LIBRARY');
}
6
Pierre Buyle

Si está modificando o generando un formulario, puede usar el atributo # adjunto , que se describe como "permite cargar CSS, Javascript, bibliotecas o tipos personalizados cuando se crea el formulario".

0
kiamlaluno