Hero

Cómo evitar que algunos enlaces utilicen el Overlay Paths de Drupal 7

Marzo 04, 2013

estebanvalerioh
jQuery
Drupal

Si está utilizando los módulos de Drupal Overlay y Overlay Paths, puede encontrarse en una situación donde necesite evitar que ciertos enlaces que abren una página usando el overlay.

Podría pensarse a usar la función de jQuery preventDefault o stopPropagation u otras similares, como solución para impedir que se ejecute la acción asociada al enlace, pero lamentablemente no funciona y no presenta ningun error aparente.

Para solucionar este problema, necesitamos utilizar el hook hook_overlay_paths provisto por el módulo Overlay Paths.

Necesitamos indicarle a Drupal que nuestro path, no va a utilizar el módulo de overlay, de la siguiente forma:

function MIMODULO_overlay_paths() {
  $paths = array(
    'my-path' => FALSE,
  );
  return $paths;
}

También se pueden usar wildcards en la ruta como my-path/*.

De esta manera Drupal va a permitir que funciones de jQuery como preventDefault(), funcionen y pueda continuar con el trabajo.

Espero sea de utilidad.

Recibe consejos y oportunidades de trabajo 100% remotas y en dólares de weKnow Inc.