E' possibile fare un redirect di una pagina (nodo) in base ad una condizione?
Faccio un esempio:
creo un tipo di contenuto cui per accedervi bisogna avere dei permessi (tramite pay per node ne mio caso) e creo all'interno di una pagina descrittiva un link ad esso. Se non ho i permessi necessari quando clicco sul link mi appare ovviamente la pagina con scritto Accesso negato. Vorrei far si che invece della classica pagina di accesso negato mi appaia una pagina che istruisca l'utente su come fare per abilitarne i permessi (esempio, nel mio caso acquisto di un nodo tramite paypal con Ubercart + pay per node ). Ovviamente non deve succede nel caso in cui l'utente è già abilitato e quindi seguire il normale flusso.
Spero di essermi espresso bene.
Consigli?
E' semplice basta andare in admin/settings/error-reporting cioè Administer / Site configuration / Error reporting e impostare la pagina che si desidera es: node/100 oppure user/login o quello che vuoi
Ciao!
Si ok, lo so.
Solo che così la regola verrà applicata a qualsiasi pagina non autorizzata. Io vorrei che solo un dato nodo (in verità tipo di contenuto) abbia tale comportamento.
Inoltre ho pure provato questa soluzione ma impostando come pagina il nodo di un prodotto ubercart (devo vendere il nodo), nel momento in cui faccio "Aggiungi prodotto nel carello" non vengo rediretto nella pagina del carrello ma rimango sempre sulla stessa pagina. Ovviamente il nodo si comporta correttamente se non ci vado tramite il redirect.
Non sono espertissima di ubercart ma so che in admin/store/settings/cart/edit/basic puoi impostare il redirect dopo l'aggiunta al carrello. Cerca in http://drupal.org/project/modules con la parola di ricerca redirect sicuramente trovi il modulo che fa per te. Scusami se non ti sono di aiuto più di tanto ma la comunità di Drupal è immensa...
Esatto. Ed è impostato. Il problema che ho notato è che se al nodo del prodotto ci arrivo normalmente il redirect al carrello funziona regolarmente mentre se al nodo del prodotto ci arrivo mediante il redirect impostato in admin/settings/error-reporting, il redirect al carello non funziona...gran bella fregatura (o magari sbaglio qualcosa)!!!
Sto cercando e ricercando...ma niente che faccia al caso mio. E' quasi tutto orientato ai ruoli e non al nodo.
Ma figurati!!!
Se non trovi niente, dovresti riuscire a ottenere quello che vuoi scrivendo un modulo che usi hook_nodeapi, impostando una condizione in uno degli stati ($op) "primitivi" della visualizzazione del nodo.
Grazie Pinolo.
Purtroppo ho trovato ben poco per non dire nulla.
Al momento, causa tempi ristrettissimi, ho optato per una procedura diversa ma efficace utilizzando uc noce checkout+node published .
Sicuramente appena completo il tutto vedrò di mettere in pratica il tuo consiglio così da valutare quale soluzione mi risulta più congeniale anche al sol scopo istruttivo.