Sito sparito dalle SERP? Occhio al tema WordPress

In questo periodo mi sto occupando sempre più spesso di penalizzazioni (sia algoritmiche che manuali) su siti di diversi settori e ci sarebbero tantissime cose da scrivere, ma oggi voglio parlare di un nostro sito sparito completamente dalle SERP di Google in modo abbastanza strano!

Si tratta di un blog online da circa 2 anni, con argomento di nicchia, realizzato in WordPress con l’utilizzo di un tema gratuito come se ne trovano a migliaia online (di quelli che se poi compri la licenza per pochi $ di permettono di togliere anche il link del footer), che ha articoli con ottimi contenuti (originali sicuramente dato il tema) pubblicati periodicamente, con un profilo link  pulitissimo (solo 4 link provenienti da siti a tema del tutto spontanei).

Il sito si naviga perfettamente ed è anche veloce a caricare.

Nel tempo non abbiamo mai monitorato il sito, così a Ottobre 2013, per caso, dopo aver controllato se il sito era presente in SERP noto con stupore che il sito è completamente sparito; anche cercando su Google il nome del sito con estensione nomesito.it  non usciva fuori;  comando  site:  restituiva 0 pagine, nessuna pagina con cache, sicché ho cominciato a pensare su come mai Google si fosse così incazzato con il nostro sitarello.

Comincio così a fare i primi controlli standard che si fanno in questi casi:

  1. Controllo le statistiche per capire da quanto il sito è in questo stato (dal 13 Luglio c’è un calo consistente di traffico);
    statistichesito
  2. Il sito non ha un Robots.txt  con un  “Disallow /” messo lì per errore;
  3. Il sito non ha un meta robots “Noindex” inserito per errore manualmente o tramite qualche plugin;
  4. Il sito non è stato “bucato”, quindi tutte le pagine del sito sono pulite e senza scripts strani o malware o link verso siti poco raccomandabili;
  5. Il sito non è presente nel WMT,  quindi provvedo a inserirlo,  aspettando poi qualche ora per vedere eventuali messaggi d’errore;
  6. Controllo i Logs del Server  e noto molti errori 500, ma il sito si vede bene!accesslogpic
  7.  Controllo anche con il Chrome Developer Tools, che mi dà errore 500 nel caricamento delle pagina, mentre tutti i singoli file vengono caricati, ecco perché le pagine vengono comunque caricate dal browser.

errore500pic

 

Bene scoperto l’arcano, quindi il sito è sparito non perchè bannato, ma perchè i bot dei motori di ricerca ricevevano  ad ogni chiamata HTTP un bel HTTP STATUS 500!

Comincio a studiarmi il tema wordpress, pensando al fatto che il problema doveva essere in un template comune a tutte le pagine (quindi header.php, footer.php, sidebar.php ect)  in quanto l’errore si presentava sempre, e scopro che nella sidebar c’era una query (che richiamava con delle condizioni le categorie) che era scritta male e che quindi andava in errore, pertanto oltre al fatto che non mi mostrava il widget con le specifiche categorie richiamate dalla query mostrava nell’header lo status 500.

Chiedo aiuto ad un amico che nè sa molto piu di me di programmazione (Daniele), che mi indica come causa del probema la funziona WP_die di wordpress che trovando un errore restituisce un status 500, così come ho indicato sotto:
/**
 * Kill WordPress execution and display HTML message with error message.
 *This is the default handler for wp_die if you want a custom one for your
 * site then you can overload using the wp_die_handler filter in wp_die
 * @since 3.0.0
 * @access private
 * @param string $message Error message.
 * @param string $title Error title.
 * @param string|array $args Optional arguments to control behavior.
 */
function _default_wp_die_handler( $message, $title = '', $args = array() ) {
        $defaults = array( 'response' => 500 );
        $r = wp_parse_args($args, $defaults);
        $have_gettext = function_exists('__');
        if ( function_exists( 'is_wp_error' ) && is_wp_error( $message ) ) {
                if ( empty( $title ) ) {
                        $error_data = $message->get_error_data();
                        if ( is_array( $error_data ) && isset( $error_data['titl e'] ) )
                                $title = $error_data['title'];                }
                $errors = $message->get_error_messages();
                switch ( count( $errors ) ) :
                case 0 :
                        $message = '';
                        break;
                case 1 :
                        $message = "<p>{$errors[0]}</p>";
                        break;
                default :
                        $message = "<ul>\n\t\t<li>" . join( "</li>\n\t\t<li>", $errors ) . "</li>\n\t</ul>";
                        break;
                endswitch;
        } elseif ( is_string( $message ) ) {
                $message = "<p>$message</p>";        }

        if ( isset( $r['back_link'] ) && $r['back_link'] ) {
                 $back_text = $have_gettext? __('&laquo; Back') :
 '&laquo; Back';
                 $message .= "\n<p><a
 href='javascript:history.back()'>$back_text</a></p>";
 ... etc.

Vi è capitato mai qualcosa di simile??

Risolto il problema, dopo pochi giorni il sito è tornato gradualmente ad essere visibile!

Commenti di “Sito sparito dalle SERP? Occhio al tema WordPress”:

  1. Claudio

    Ciao Marco, esperienza molto simile proprio di recente.

    Sito che rispondeva con pagina bianca e google che segnalava interruzioni temporanee.

    Dopo aver attivato il debug (ci sono varie costanti da definire nel wp-config) ho risolto 4-5 problemi diversi che venivano stampati a video, ma il blocco a volte continuava a presentarsi… ed è la cosa più brutta avere un problema, ma non sempre e non riuscire a replicarlo.

    Alla fine spulciando a mano il db, nella wp_options c’era una riga troppo lunga per i miei gusti.. un plugin (una gallery) aveva letteralmente intasato il cron job. Cancellato tutto il contenuto il sito si è ripreso..

    L’errore si presentava solo quando il server non riusciva ad allocare ram a sufficienza, per la super mega query che veniva richiamata dal db e mandata in esecuzione dal cron job.

    Ciao e a presto!

  2. Luca Bove Luca Bove

    Nel caso presentato però il sito rispondeva correttamente all’utente (ma un componente restituiva http status 500).

    Era quindi molto più subdolo l’errore.

  3. Alex

    Ciao Luca grazie per il consiglio!

  4. Marco

    Si ho avuto in passato un problema simile ma per un errore di programmazione della scelta della lingua. Sistemato è tornato tutto ok :)

  5. Sito Wordpress Penalizzato: Caso di studio portato al Be-Wizard - IM Evolution Blog

    […] Per quanto mi riguarda ho portato un caso di studio di Imevolution su un sito WordPress Penalizzato a causa di problemi tecnici di cui avevo parlato già qui. […]

  6. federico berti

    Mi rincuora un pochino leggere queste vostre esperienze. Ho avuto anch’io un problema di errori 500, pagina bianca e Fatal memory error, dovuti a una serie di plugin che improvvisamente erano entrati in conflitto con il mio tema. Purtroppo non si può evitare l’aggiornamento degli antivirus e antispam, quindi un cambiamento nella configurazione c’è sempre e i guai dietro l’angolo con WP!!

    Ho risolto il problema di errore 500 con un aggiornamento del tema WordPress, eliminando quasi tutti i vecchi plugin e reimpostando una nuova combinazione; da 15 plugin che avevo sono passato a 5, usando il più possibile i CSS e l’html. Ho inserito All in one SEO e rispedito la sitemap, che è puntualmente arrivata ma… sorpresa!!!

    Di 750 e più URLS inviate (ho un sito di sole 250 pagine) ne ha indicizzate solo 5!!!! Leggendo le vostre testimonianze, e vedendo che le pagine indicizzate erano scese a zero cogli errori 500, mi viene il dubbio che effettivamente il problema sia da attribuire a questi e che di conseguenza nei prossimi giorni dovrebbe tornare tutto regolare, spero…

    per scrupolo, sto impostando tutti i tag rel canonical per evitare i contenuti duplicati, e ripulendo tutto l’html del body da un po’ di ridondanze che avevo accumulato nel tempo; spero davvero che in qualche giorno si risolva. Il problema degli error 500 l’ho risolto stanotte, ma era già in atto da qualche giorno per cui il danno c’è stato. Speriamo bene!!!!!

Scrivi il tuo Commento:

* Campi necessari
** La mail inserita non verrà pubblicata