Pubblicato il 25/09/16e aggiornato il

Come ripristinare i widget di Blogger caricando i javascript esterni nel modello.

Come ripristinare i widget di Blogger dopo che Google Drive ha tolto il supporto di hosting ai file javascript e CSS che vi venivano caricati. Si usa Google Sites per i blog gratuiti e si caricano i file sul modello per quelli con dominio personalizzato.
Gli utenti della piattaforma Blogger contrariamente a chi ha un blog self-hosted su Wordpress non hanno uno spazio proprio e quindi hanno sempre problemi quando devono caricare file esterni per il layout del sito o per un widget. Il problema in effetti non esiste per chi abbia un sito gratuito del tipo nomeblog.blogspot.com perché in questo caso si può usare il servizio gratuito Google Sites per caricare file CSS, javascript, XML ma anche MP3 per riprodurre audio. Se si possiede un blog su Blogger con un dominio personalizzato vale a dire con un indirizzo www.esempio.com, Google Sites riconoscerà la non proprietà di Google e interromperà il supporto di hosting.

Poco più di due anni fa sembrava che tutto fosse risolto con l'introduzione di un servizio hosting su Google Drive che supportava tutti i domini, non solo quelli personalizzati di Blogger ma anche quelli su piattaforma Wordpress. La soddisfazione è durata poco perché l'anno scorso siamo stati avvertiti che il supporto a questo servizio sarebbe cessato il 31 Agosto 2016.  Dopo aver appreso la notizia avevo immediatamente scritto un post avvertendo i lettori che ci sarebbero state ripercussioni su widget e layout che si appoggiavano a Google Sites per i file esterni. A partire dal 1 Settembre quindi mi aspettavo una serie di commenti di lettori che lamentavano il non funzionamento di gadget. Mi sono stupito quando questo non è accaduto. Ho anche pensato un po' ingenuamente che quelli di Google si fossero dimenticati della scadenza. Invece non è così perché hanno solo posticipato il ritiro del supporto di una ventina di giorni. In questi ultime 48 ore ho già ricevuto segnalazioni di widget che non funzionano che facevano capo a Google Drive.

L'alternativa più naturale sarebbe stata quella della cartella Public di Dropbox per avere il link diretto dei file caricati ma questa funzionalità è riservata solo agli utenti Pro e Business e a quelli che si sono iscritti a Dropbox prima del 4 Ottobre 2012. In questo post vedremo quindi cosa fare per risolvere il mancato funzionamento di widget che usavano file caricati su Google Drive. Intanto fissiamo delle linee di condotta generali che seguirà il sottoscritto e che consiglio anche ai lettori:
  1. Quando verrò informato di un widget che non funziona modificherò il codice sostituendo l'URL di Google Drive con quello di Google Sites.
  2. Tale codice funzionerà però solo con i blog gratuiti.
  3. Chi ha un un blog con dominio personalizzato dovrà scaricare i file di Google Sites.
  4. Per scaricare un file caricato su Google Sites basta incollarne l'URL nella barra degli indirizzi e pigiare su Invio. Il computer potrebbe avvertire che tale file è pericoloso se si tratta di un file .js

CARICARE I FILE CSS DIRETTAMENTE NEL WIDGET O NEL MODELLO

Possiamo fare a meno di usare servizi esterni per file .js e css inserendoli direttamente nel modello di Blogger. Vediamo come procedere per entrambi i tipi di file. Un file CSS viene solitamente inserito nel codice di un widget o di una personalizzazione con questa sintassi standard

<link rel='stylesheet' href='URL_CSS_ESTERNO.css'>

in cui la parte colorata di blu può anche essere mancante e il .css finale determina l'estensione. Questi file esterni quasi mai vengono inseriti nei widget ma solo nel modello. Per risolvere se l'URL  non funzionasse più essendo preso da Google Drive, dovremo incollarlo nel browser quindi andare su Invio. Il file potrebbe scaricarsi oppure potrebbe aprirsi una scheda del browser

salvare-file

Per avere il file basta cliccare con il destro del mouse sulla pagina e cliccare su Salva con nome. Si aprirà Esplora file, dovremo selezionare la cartella mentre il nome verrà inserito automaticamente.






Non resterà che sostituire nel modello la riga evidenziata di giallo con il codice del file scaricato. Per poterlo fare si può usare il programma Notepad++ che è gratuito ma si potrebbe utilizzare anche il Blocco Note.  Con tale programma si va su Nuovo e si incolla il codice da modificare quindi si va su Apri e si seleziona il file CSS che abbiamo appena scaricato.

sostituire-css-esterno

Si cancella la riga di codice evidenziata di giallo e al suo posto si incolla tutto il codice copiato dal file compreso trai tag <style> e </style> quindi tale codice si incolla nel modello al posto del precedente. In questo modo il codice riprenderà a funzionare e non sarà più legato a servizi di hosting esterni. Riepilogando al posto della riga standard di un file CSS esterno si incolla

<style>  
  /* Codice del file scaricato */
  
</style>


COME CARICARE I FILE JAVASCRIPT (.JS) NEL MODELLO O NEL WIDGET


I file javascript esterni vengono inseriti solitamente con una riga di codice come questa

<script src='URL_JAVASCRIPT_ESTERNO.js' type='text/javascript'/>

dove l'URL_JAVASCRIPT_ESTERNO.js se era caricato su Google Drive avrà smesso di funzionare e se invece fosse caricato su Google Sites non funzionerebbe nei blog con dominio personalizzato. Anche in questo caso la prima cosa da fare è quella di scaricarlo incollando l'indirizzo nel browser e andando su Invio. Se il download non si effettuasse e si visualizzasse la scheda con il codice si procede come in precedenza. Vale a dire si clicca con il destro del mouse sulla scheda e si sceglie Salva con nome, si selezionerà la cartella per poi andare su Salva.  Dovremo quindi sostituire la riga di codice evidenziata di verde. Potremo usare ugualmente Notepad++ per creare un codice di questo tipo

<script type='text/javascript'>
 //<![CDATA[      

  ----- Codice del javascript ----    

  //]]>
 </script>

in questo modo

sostituzione-javascript

dove la riga evidenziata di verde è stata sostituita dal codice del file evidenziato di viola e dalle quattro righe evidenziate di giallo. In questo modo il codice diventerà molto più lungo. In definitiva è questa la ragione perché si utilizzano i file esterni. Però riprenderà a funzionare e non sarà più legato alla disponibilità di altri servizi. Nel prossimo post pubblicherò una applicazione di questa procedura al widget degli Ultimi Post con Miniature che tra l'altro è presente anche in questo sito.




6 commenti :

  1. ciao Ernesto che tu sappia questa cosa riguarderà tutti i file ospitati su google drive (io sul mio blog metto a disposizione delle risorse gratuito ricorrendo proprio ad un hosting su google drive) o solo i javascript?

    RispondiElimina
    Risposte
    1. La cosa riguarda solo i link diretti di tutti i file. Tu puoi continuare a condividere le pagine di Google Drive in cui i lettori possono scaricare file come prima. La differenza tra link di condivisione e link diretto è che il link diretto termina con l'estensione del file e se si apre mostra solo quello e null'altro
      @#

      Elimina
  2. Ci sono problemi anche per la pagina della privacy. Tu come hai risolto? Caricandola su googlesite non viene visualizzata.

    RispondiElimina
    Risposte
    1. La pagina della privacy
      http://www.ideepercomputeredinternet.com/p/politica-dei-cookie.html
      è in una pagina statica in cui ho tolto tutta la pubblicità
      @#

      Elimina
    2. PS: Io ho risolto con Firebase.

      Elimina

Non inserire link cliccabili altrimenti il commento verrà eliminato. Metti la spunta a Inviami notifiche per essere avvertito via email di nuovi commenti. Se ti ho aiutato con il post o con le risposte ai commenti condividi su Facebook o su Twitter. Grazie.