In Drupal 7.2 (e mi sa anche fino alla 7.7) impostare un trigger per effettuare un redirect dopo il logout non funziona.
O meglio: il redirect lo fa, ma non fa realmente il logout (basta tornare nel sito per notare che si è ancora autentificati).
Il problema è stato segnalato in http://drupal.org/node/1068360, ma al momento non sembra che a nessuno freghi un granchè.
L'errore è probabilmente dovuto al session_destroy() di user_logout() viene chiamato DOPO l'invocazione degli hook "user_logout".
Una soluzione semplice è questa:
1. si crea una pagina interna del sito, che fa questo codice php:
<? session_destroy(); drupal_goto('http://SITO_ESTERNO');
2. si imposta l'action del trigger per fare il redirect a quella pagina interna invece che direttamente al sito esterno.
In alternativa, lato codice, si può operare tramite l'hook "user_logout"... ma in quel caso non ha nemmeno senso usare un trigger...
Aggiungi un commento