Le comportement standard de Drupal consiste à transmettre tous les arguments, qu'ils le demandent ou non. Parfois, ce comportement est souhaité. Cependant, je dois retourner un 404 pour tout sauf une chaîne de requête.
Exemple du problème http://drupal.org/project/modules http://drupal.org/project/modules/google.com <- Cela devrait renvoyer un 404; 200 donnés. Pénalité pour contenu en double!
Le module views 404 suppose que par défaut, vous ne voulez pas que les arguments soient transmis. Cependant il n'y a pas de version D7 du module.
Mais la page du projet indique que 404 pour les vues peuvent également être accomplies en définissant Global: Null sous Arguments.
Évidemment, dans D7, les "arguments" sont maintenant des "filtres contextuels", mais je ne sais pas quels paramètres ajouter au filtre contextuel Global: null pour obtenir le résultat souhaité.
Toute aide serait appréciée.
:)
Je modifiais le mauvais affichage et la vue ne fonctionnait pas comme elle le devrait. Il n'est pas nécessaire d'utiliser du code PHP pour valider l'argument; voir la réponse mise à jour.Vous pouvez le faire en utilisant des vues hors fonction. Dans chaque paramètre de filtre contextuel, vous pouvez voir une case à cocher "Spécifier les critères de validation" pour voir plus de paramètres.
Ensuite, vous pouvez sélectionner "validateur" en fonction de vos conditions d'affichage. Si vous souhaitez une validation personnalisée, sélectionnez le code php. Renvoyez Vrai ou Faux dans le code php en fonction de vos conditions de validation.
Enfin, sélectionnez "Action à entreprendre" car l'accès à l'écran est refusé! Voir la capture d'écran ci-dessous pour le filtre contextuel nid.
la source