una pagina d’errore perfetta

Attenzione! Attenzione! L'indirizzo ufficiale ("canonico", come direbbero quelli di Google) di questa pagina è cambiato. Per favore, aggiornalo nei tuoi favoriti:

http://www.duechiacchiere.it/1584/una-pagina-derrore-perfetta

Nel gergo informatico, l’errore 404 è quello che un sito restituisce all’utente quando la pagina a cui si sta tentando di accedere non esiste più. La tradizione suggerisce, in questo contesto, di informare semplicemente l’utente dell’errore, e nulla più. Ma il poveretto che si trova davanti questo laconico messaggio, in genere ha seguito un collegamento da un altro sito oppure è arrivato tramite un motore di ricerca. E magari vorrebbe essere aiutato ad orientarti, e non essere “mollato” nel bel mezzo del nulla. Prendendo spunto da un articolo apparso tempo fa su A List Apart, La pagina d’errore perfetta, ecco come puoi fare la tua con Wordpress.

Si può dare di più…

Non tutti sanno che quando si sviluppa un nuovo tema per Wordpress, è possibile prevedere una pagina apposita, chiamata proprio 404.php, che verrà visualizzata nel caso in cui la pagina richiesta non esiste: né come articolo, né come pagina statica. Se il tema è modulare, ovvero prevede un tassello per il menu laterale, uno per i contenuti, uno per l’intestazione e così via, è possibile richiamarli tutti ponendo al posto della chiamata di funzione che visualizza il corpo dell’articolo, un testo esplicativo che dice cosa è successo.

A tentar non nuoce

Se provi ad esempio a digitare un percorso inesistente all’interno di questo sito (ad esempio l’articolo numero 5000), vedrai apparire non il solito laconico errore, ma qualcosa di più utile: alcune indicazioni che ti mettono a disposizione i collegamenti alle aree più importanti (il modulo di contatto, la pagina principale, la barra laterale) e ti spiegano come orientarti tra i contenuti. Come suggerisce l’articolo originale “non puntare il dito contro l’utente”, in fondo non è mica colpa sua (in genere). Invece è bene spiegargli cos’è andato storto, usando verbi condizionali come “potrebbe essere” oppure “possibilmente”: se è la sua prima visita sul blog, ne rimarrà positivamente colpito. D’altro canto non faresti lo stesso con il tuo amico che non trova il tuo campanello nella “citofoniera” (così si chiama?) del palazzo?

 

Ci sono 8 commenti

  1. FN

    Camu,
    Oltre ai validi suggerimenti io inserirei anche alcuni riferimenti a post che potrebbero essere validi ed interessanti:

    Se si arriva da un motore di ricerca, potrebbe essere nota la parola chiave cercata e quindi fornire dei post che la includono.
    Verificare che non sia stato aggiunto semplicemente un carattere di troppo nell’URL (una ù accentata, per esempio)

    Sarebbe possibile su Wordpress?

    FN, 09 dicembre 2008 alle 13:31 » rispondi

  2. Piero_TM_R

    Domanda da un milione di dollari, come attivo la pagina 404.php?
    Mi spiego, ho la pagina nel template, la modifico e tutto resta ok, ora vengono i dolori, cosa devo aggiungere al file .httaccess??? Non ho capito che sintassi usare. Se metto 404.php non capita nulla, se metto il percorso completo della pagina contenuta dentro la cartella del template non fa nulla lo stesso… Cosa sbaglio? :s

    Piero_TM_R, 09 dicembre 2008 alle 18:18 » rispondi

  3. camu

    @Federico, grazie per i suggerimenti, credo esistano dei plugin che fanno quello che dici (in particolare per chi arriva da google) appena ho un attimo di tempo vedo di approfondire l’argomento. Riguardo alla URL, non è così facile :) Ma vedrò di documentarmi anche su quello…
    @Piero, non mi è perfettamente chiara la domanda (e poi non ho il milione di dollari eh eh). Mi spiego meglio: il 404.php non va “attivato” ma è riconosciuto automaticamente, e richiamato da Wordpress non appena si cerca di accedere una pagina che non esiste. Se a sua volta il 404.php non esiste, allora verrà mostrata la pagina d’errore classica. Cosa intendi per “se metto 404.php non capita nulla” o meglio: che pagina ti mostra Wordpress se cerchi di accedere una URL che sai non esistere sul tuo sito? Sicuro che il template che usi non metta in campo altre strategie per “intercettare” il 404? :)

    camu, 10 dicembre 2008 alle 15:26 » rispondi

  4. Piero_TM_R

    Allora, se immetto nella barra del browser una pagina che non esiste esce fuori:
    “Not Found

    The requested URL /fsfdasaer was not found on this server.

    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
    Apache/2.2.10 (Unix) mod_ssl/2.2.10 OpenSSL/0.9.8b mod_bwlimited/1.4 Server at losfogo.netsons.org Port 80″

    Quindi non funziona il 404.php, nella cartella del template è presente la pagina 404.php, come faccio a verificare che WordPress la utilizzi in maniera corretta?

    Piero_TM_R, 10 dicembre 2008 alle 17:02 » rispondi

  5. camu

    @Piero, tutto chiaro adesso: il tuo sito non usa i permalink “carini” impostati tramite il file .htaccess. Però il tuo 404.php viene chiamato ad esempio se clicchi qui. Quello che puoi fare, è aggiungere una regola nel tuo .htaccess per dire al tuo Apache (che intercetta la pagina non trovata prima di dirlo a Wordpress) di comportarsi adeguatamente :) Se sono stato troppo tecnico, chiedimi pure.

    camu, 10 dicembre 2008 alle 17:32 » rispondi

  6. Piero_TM_R

    In parte ho capito, che devo scrivere nel mio .httaccess?
    Seconda domanda, perchè il testo che ho inserito io non viene fuori???? Mah!
    Grazie per la disponibilità! :)

    Piero_TM_R, 10 dicembre 2008 alle 17:47 » rispondi

  7. Piero_TM_R

    Fatto, ho aggiunto al file httaccess il link alla pagina che mi hai segnalato e funziona! :) Grazie mille, sempre un maestro! ;)

    Piero_TM_R, 10 dicembre 2008 alle 19:29 » rispondi

  8. camu

    @Piero: prego :) Sono contento che il trucchetto abbia funzionato…

    camu, 10 dicembre 2008 alle 23:10 » rispondi

Questo blog usa i Gravatar, Avatar Globalmente Riconosciuti. Se hai registrato il tuo indirizzo email con questo servizio, inseriscilo qui di seguito, verrà mostrata la tua icona personale vicino al testo. I dati personali inviati dagli utenti sono tutelati dal Decreto Legislativo 196/2003. Saranno oggetto di trattamento, elettronico e non, nei limiti strettamente necessari alla prestazione dei servizi gratuiti del sito, ivi compresa la loro eventuale comunicazione a terzi (ad esempio il provider che ospita il sito) entro detti limiti. Ti ricordo infine che i commenti sono verificati, al fine di preservare la qualità del sito.