¿Cómo verificar, en D7, si la página actual está devolviendo un error 404 de un módulo / plantilla?
http-status-codes
Andrey Rudenko
fuente
fuente
Respuestas:
En Drupal 7, puedes usar
drupal_get_http_header()
.En el archivo template.php, use este código.
En Drupal 8, puede usar el siguiente código en un gancho.
fuente
if ($status == '403 Forbidden') { /* ... do stuff ... */ }
system.404
ruta no funciona si ha especificado una página de nodo como su página 404 en Configuración> Sistema> Configuración básica del sitio . Consulte la respuesta de @Gervase para obtener una solución que funciona cuando tiene o no tiene especificada una página 404 personalizada.Drupal 8.2.x:
Desafortunadamente, drupal_get_http_header ("estado") ya no funciona.
Tratar:
Aquí hay una discusión sobre esto: https://www.drupal.org/node/1969270
fuente
getStatusCode
función.Esta es la forma más sencilla de detectar el acceso denegado (403) y la página no encontrada (404) en Drupal 7.
fuente
$router_item
no estará vacío si lasite_404
variable se establece en una ruta de nodo, por lo que se necesitarían verificaciones adicionales.