Risposte:
Una pagina di accesso negato personalizzata può essere definita in / admin / config / system / site-information. Ad esempio, una pagina di errore 404 comune è fornita dal modulo Search404 .
Tutto quello che devi fare è definire la tua pagina, magari con un teaser dalla pagina richiesta e informare l'utente che l'accesso al contenuto completo richiede che siano registrati.
Questo probabilmente richiederà che tu inserisca del codice php nel corpo della pagina, oppure potresti usare il modulo Search404 come base per sviluppare il tuo modulo per gestirlo.
Modifica: più ci penso e più interessante diventa la domanda. Penso che potrebbe essere presentato un caso per un'autorizzazione "Visualizza teaser" oltre a "Visualizza contenuto pubblicato". In altre parole, la pagina potrebbe essere disponibile per tutti gli utenti, ma il teaser verrebbe visualizzato al posto del contenuto completo e potrebbe essere visualizzato un messaggio che indica che l'utente deve essere loggato per visualizzare il contenuto completo, proprio come per commenti ora. Forse un'idea per un modello contribuito (non è stato possibile trovarne uno su DO).
Penso che puoi usare page - 403.tpl.php e page - 404.tpl.php e il codice in template.php tramite
function THEMENAME_preprocess_page(&$variables) {
$status = drupal_get_http_header("status");
if($status == '403 Forbidden') {
$variables['theme_hook_suggestions'][] = 'page__403';
}
if($status == '404 Not Found') {
$variables['theme_hook_suggestions'][] = 'page__404';
}
}
Sto usando il modulo di errore personalizzato per questo.
Per reindirizzare alla pagina originariamente richiesta dopo il 403, ho creato questa patch .
Ecco due esempi dei miei usi del modulo: