"Gli Jatravartid di Viltvodle VI credono invece che il cosmo sia nato dallo starnuto di un essere chiamato il Grande Ciaparche Verde."

Towel Day - Non fatevi prendere dal Panico

Guida Galattica per gli Autostoppisti

Visualizzare una timeline X

Timeline X
Immagine da Yugatech

È passata una vita da quando ho scritto un articolo sulla tecnologia. Credo sia comprensibile: quando si parla di questi argomenti, non si possono sparare affermazioni a vanvera, come faccio praticamente in ogni altra sezione del sito, dove al più devo stare attento a non insultare nessuno... Se anche un solo visitatore seguisse i consigli od i suggerimenti indicati e si trovasse in difficoltà, mi dispiacerebbe parecchio e ci farei una magra figura. Per questa ragione cerco sempre di testare quanto scrivo, al meglio delle mie possibilità.

In questo articolo suggerisco un modo semplice per visualizzare una o più timeline X in una pagina del proprio sito. Anzitutto, cosè una timeline X? Si tratta semplicemente di un elenco cronologico dei Tweet di un account. Per maggiori informazioni si può consultare il Centro Assistenza X; in quel contesto, timeline è tradotto con Cronologia.

La possibilità di visualizzare la timeline X offre un modo elegante di fornire informazioni e "movimentare" la pagina, rendendola più accattivante. Certo, quando ha senso farlo: io la uso solo in Home Page per il secondo scopo, presentando i Tweet di software house videoludiche che seguo. È una scelta ben precisa, in linea con il tono leggero del sito. Ma non è da sottovalutare la parte informativa: pensate, ad esempio, ai Tweet relativi ai risultati elettorali (è un esempio reale).

Ho sempre utilizzato un Widget a questo scopo, WidgetKit di YOOtheme, scaricabile gratuitamente (la sola versione 2). La possibilità di visualizzare una timeline X è solo una minima parte delle funzionalità del componente.

Come sapete (?), è da parecchio tempo che non aggiorno o controllo il sito, per cui mi sono reso conto solo ora che l'elenco dei Tweet non viene aggiornato. Non solo, anche modificando i parametri del componente, per esempio cambiando l'utente da seguire, nessuna modifica viene riconosciuta. Nella console del browser non sono riportati errori. Sinceramente l'idea di spulciare una serie di log infinita non mi attirava, sopratutto perchè sono abbastanza convinto che il problema sia a monte: ci sono state diverse modifiche alle API X ed il componente WidgetKit non viene aggiornato da tempo. Ho scartato rapidamente il passaggio a soluzione alternativa: tra le estensioni gratuite, non ho trovato niente di aggiornato o convincente. Inoltre, viste le frequenti modifiche delle API, è più che probabile che ben presto avrebbero smesso di funzionare.

L'unica possibilità concreta era partire da zero e scrivere qualcosa di "nativo" in grado di leggere la timeline X: meno invasivo rispetto ad un'estensione e sopratutto "sempre" funzionale, visto che è basato sulle specifiche del provider. "Sempre" tra virgolette perchè è sempre possibile, anzi probabile, che certe funzionalità siano modificate nel tempo. Ma mi aspetto che le modifiche, in quel caso, siano poche e ben documentate.

Oddio, esiste una quarta possibilità: lasciar perdere completamente la visualizzazione di una timeline X. Costo e tempo zero. Ma se mi dovessi arrendere ogni volta che mi trovo di fronte ad una sfida tecnologica, per quanto banale, non imparerei niente.

NOTE IMPORTANTI PRIMA DI PROSEGUIRE
  • da diverso tempo - indicativamente, da quando un certo miliardario ha acquistato la piattaforma e licenziato migliaia di dipendenti - il parametro data-tweet-limit descritto più oltre non funziona. Non è un problema solo mio: è segnalato ovunque. Lascio comunque il riferimento nell'articolo, forse un giorno lo sistemeranno. Questo comporta la visualizzazione dei tweet in una box con barre di scorrimento verticali. Ho eliminato dal codice citato anche il riferimento a data-chrome e relativi parametri.
  • Inoltre, per ragioni che ho indagato in lungo e in largo senza venirne a capo, una delle timeline (quella di GOG.com) non viene aggiornata e mostra tweet datati. Non è questione di cache, le ho davvero provate tutte. A quanto pare, si tratta di un problema non solo mio, molti webmaster hanno sollecitato direttamente e non gli sviluppatori di X senza ricevere risposta. Succede anche sulla piattaforma test di X, X Publish, per cui... Aspettiamo (poco) fiduciosi.
    AGGIORNAMENTO: oggi 8 giugno 2024 vedo che i tweet di GOG.com sono aggiornati. Rinuncio a capire e segnalo con gratitudine.

Quindi mi armo di pazienza ed inizio a consultare le pagine della Developer Platform X, in particolare Twitter for Websites, dove si parla delle Embedded Timelines, che sono esattamente quello che mi interessa, in particolare le List Timeline, descritte nella medesima pagina. Il paragrafo How to add an embedded timeline to your website mi porta a X Publish, uno strumento che permette di creare codice per visualizzare timeline ovunque in pochi clic: è sufficiente indicare l'handle dell'utente da seguire e selezionare Embedded Timeline per avere a video il codice da inserire nel proprio sito, con possibilità poi di definire ulteriori personalizzazioni.

Ad esempio, volendo visualizzare la timeline del sottoscritto in una pagina web, è sufficiente indicare @Ciaparche nella casella di testo, confermare, selezionare poi Embedded Timeline e voilà: anteprima del risultato e codice da usare sono mostrati a video. Il codice per l'esempio, in particolare, è il seguente:

<a class="twitter-timeline" href="https://twitter.com/Ciaparche?ref_src=twsrc%5Etfw">Tweets by Ciaparche</a> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Davvero semplice. A questo punto, inizio a testare il sistema nel mio sito: ma tutto quello che viene caricato è un laconico messaggio Tweets di GOGcom, niente Timeline. Uhm. Provo una semplice pagina HTML, fuori dal contesto Joomla: stesso comportamento. A questo punto l'ovvio passo successivo è controllare la console del browser, ed eccolo lì: un bell'errore Failed to load resource: net::ERR_BLOCKED_BY_CLIENT. Qualche estensione lato browser sta bloccando la richiesta, chiaramente un'estensione che blocca i contenuti indesiderati; la individuo rapidamente: si tratta di DuckDuckGo Privacy Essentials. Ed infatti è stato sufficiente disabilitare il controllo per la mia home page per fare funzionare tutto come previsto.

A questo punto ho provveduto ad abbellire un minimo il risultato, anzitutto personalizzando la riga generata da X Publish: si possono specificare alcuni parametri aggiuntivi, descritti in dettaglio alla pagina Timeline Parameter Reference; in particolare, ho aggiunto:

data-chrome="nofooter noscrollbar transparent" data-tweet-limit="4"

eliminando piede, barre di scorrimento e rendendo trasparente lo sfondo della timeline, per una resa omogenea con il resto della pagina; circa le barre di scorrimento: ho eliminato la visualizzazione, ma lo scorrimento rimane attivo, provate con la rotella del mouse su una delle timeline. Inoltre, ho limitato la timeline ad un massimo di 4 tweet (data-tweet-limit). Poi, utilizzando il componente Grid di Widgetkit, ho affiancato 3 diverse timeline (sì è possibile averne più di una nella stessa pagina, ciascuna ovviamente con il proprio codice generato da X Publish).

Il risultato mi piace: nessuna dipendenza da estensioni di terzi, possibilità di visualizzare contemporaneamente timeline di diversi utenti (a differenza di prima) e adattamento allo stile della pagina immediato. Certo, si sono un po' allungati i tempi di caricamento ma niente di inaccettabile.

Un'ultima osservazione: X non ha ancora implementato la timeline live, ossia l'aggiornamento automatico dell'elenco dei tweet in timeline, ma a quanto pare sarà implementato in futuro. Al momento è necessario fare il refresh della pagina.

Concludo ricordando nuovamente che per la corretta funzionalità della soluzione è possibile sia necessario disabilitare estensioni di gestione della privacy o adblocker: nel mio caso, il già citato DuckDuckGo Privacy Essentials. Se nella mia home page vedete solo il testo Tweets di GOGcom dove dovrebbe apparire la timeline, sapete cosa fare.

Contattami, ma pensaci bene

  • Scrivimi, affinchè possa ignorarti con calma
  • Pubblico questa roba dalla Bassa Modenese. Sì, la zona del terremoto di maggio 2012...

    ... tromba d'aria nel 2013...

    ... alluvione nel 2014...

    ... nuova tromba d'aria nel 2014

Cominciamo ad essere un po' scocciati

E questo Ciaparche, cos'è?

Se ti punge vaghezza di conoscere la risposta e dimostrare così la tua ignoranza, non temere: nessuno dal monitor ti osserva (sicuro? Meglio essere attenti... controlla le impostazioni di privacy della fotocamera), per cui corri ad informarti facendo clic sul link sotto.

Se sei tra quegli eletti che hanno colto la citazione, hai tutta la mia approvazione.

Soddisfa la tua curiosità

Riassunto per pigri

Se i titoli dei menu non ti sono chiari, al tuo posto mi preoccuperei. Vabbè oggi mi sento magnanimo e ammetto che alcuni sono criptici o ambigui, per cui ho deciso di metterti a disposizione un riassunto che ti spiega in breve cosa troverai in questo sito.

Dissipa i tuoi dubbi