Archives For Wordpress

Qualche tempo fa ho avuto un problema piuttosto fastidioso: qualcuno ha deciso che uno specifico articolo di questo blog era poco gradito, buon (?) motivo per rompermi le scatole e saturare le risorse messe a disposizione dal mio hosting provider (che ringrazio per la pazienza). Per cercare di correre ai ripari, ho incattivito l’opzione di un plugin che già utilizzavo e che utilizzo ancora oggi, iThemes Security (ex Better WP Security).

Proteggere WordPress da login non autorizzati

Ci sono molteplici modi per proteggere l’accesso al wp-login.php, questo è uno tra i tanti attuabili senza molta fatica, una soluzione tutto sommato semplice da mettere in piedi.

Il mio consiglio? Fallo dopo aver chiuso l’accesso al sito web “al pubblico“, perché se è vero che sei sotto attacco, è anche vero che le risposte del tuo blog potrebbero andare in timeout, non arrivare mai. Per chiudere l’accesso a tutti tranne che a te dovrai conoscere il tuo indirizzo IP (mioip.it aiuta in questi casi) e sbarrare le porte grazie al file htaccess. Farlo è semplice, ti basterà creare (o modificare quello esistente) il file inserendo questo pezzo di codice:

order deny,allow
deny from all
allow from 127.0.0.1

Sostituisci il 127.0.0.1 con il tuo IP, carica il file .htaccess nel tuo spazio web (ripeto: se lo hai già, modifica quello che hai e non sovrascriverlo) e il gioco è fatto. Nessuno potrà visitare il tuo sito web a eccezione di te. Così facendo dovresti tagliare fuori il resto del mondo e avere campo libero per lavorare.

Installa iThemes Security e attivalo, così possiamo passare alla sua configurazione, e nello specifico quella utile a proteggere il blog da ripetuti tentativi di accesso alla dashboard di amministrazione o a un URL in particolare (giocando un pelo in contropiede e cambiando le carte in corsa, per poi rimetterle al loro posto).

Il plugin propone moltissime opzioni che ti consiglio caldamente di analizzare, ragionare e attivare secondo tue necessità, io preferisco saltare sulla singola esigenza di stavolta, andiamo con ordine.

404 detection

Servirà a proteggerti da chi tenta di raggiungere costantemente URL non esistenti, le sue impostazioni (e i limiti oltre i quali mandare in ban l’IP di chi ci sta provando) si trovano però in Global Settings, nello specifico parlo di:

  • Blacklist Repeat Offender, che deve essere assolutamente attivo.
  • Blacklist Threshold, che corrisponde al numero di tentativi da abbuonare all’IP prima di escluderlo in maniera definitiva (impedendogli di visualizzare il sito web).
  • Blacklist Lookback Period, che corrisponde al numero di giorni durante i quali quell’IP continuerà a rimanere sotto controllo (per capirci: se il limite di lockout è 2, per il numero specificato di giorni basterà farne un altro per andare in ban, una soluzione molto secca, tanto chi attacca generalmente raggiunge il limite di lockout nel giro di qualche minuto al massimo).
  • Lockout Period, che corrisponde all’intervallo di tempo (in minuti) di allontanamento di quell’IP dal blog.
  • Lockout White List è invece il box adatto a raccogliere gli IP che non devono essere soggetti alle impostazioni sopra riportate.

In tutto questo, nella stessa tab (Global Settings, nda), potrai scegliere di essere avvisato dei lockout e dei ban a mezzo posta elettronica (l’opzione da spuntare è Enable Email Lockout Notifications), che poi è un po’ come avere l’immediato polso della situazione …

Proteggere WordPress da login non autorizzati 1

e pensa che quella che vedi qui sopra è solo una parte dei ban a me notificati nel periodo dell’attacco, in pratica un campo di battaglia senza esclusione di colpi (sono arrivato a toccare quota 400 ban circa in un paio di giorni).

Banned Users

Passa ora alla tab Banned Users e imposta ciò che credo possa esserti più utile, ovvero:

  • Default Blacklist, che ti permetterà di sfruttare liste già popolate e verificate, offerte da HackRepair.com.
  • Enable Ban Lists, che manco a dirlo è tutto ciò che serve per iniziare a fare la raccolta differenziata di IP che servono evidentemente poco alle tue visite, ma che minano per troppo tempo la tua pazienza.

Volutamente non ho specificato (almeno fino a oggi) degli User Agents specifici. Generalmente quelli più fastidiosi vengono lasciati liberi nel web da player molto grandi, motori di ricerca, servizi. Ricorda che potrai comunque appoggiarti a questa ulteriore funzione in qualsiasi momento, in caso di necessità.

Local Brute Force Protection

Ciò che più va a “braccetto” con la protezione relativa agli errori 404, opzioni che riguardano stavolta il login alla Dashboard amministrativa di WordPress e che –secondo me– devono essere altrettanto restrittive e di difficile perdono, perché se sei davvero il gestore del blog, hai anche la possibilità di chiuderti fuori dalla porta ma conoscere il trucco delle chiavi sotto al tappeto, andando a disabilitare il plugin (rinominando la sua cartella nello spazio FTP) in caso di errore ripetuto e non voluto.

  • Max Login Attempts Per Host: specifica qui il numero di tentativi massimi di login per un singolo host (IP) prima di finire nella lista dei cattivi, in alternativa puoi lasciarlo a zero per evitare di mandare in ban l’indirizzo IP e decidere di rendere sufficientemente cattivo il Max Login Attempts Per User, che si riferisce invece al numero massimo di login di uno specifico utente (che può utilizzare più IP sorgenti, giusto per capirci).
  • Minutes to Remember Bad Login (check period) indica, come per il Blacklist Lookback Period di prima, il tempo che deve passare prima che il plugin dimentichi uno dei tentativi andati a male precedentemente.
  • Automatically ban “admin” user è –infine– quella che preferisco, perché la prima regola di qualsivoglia installazione di WordPress è quella di andare a disattivare o eliminare completamente l’admin creato di default dall’installazione, creandone uno che abbia uno username del tutto differente. Se qualcuno tenta di entrare come “admin” nel tuo blog, probabilmente si tratta di un bot, meglio estirparlo sul nascere, senza pensarci due volte.

C’è altro?

Si, molto. C’è da dare un’occhiata alla Network Brute Force Protection, alla File Change Detection (ciò che ti avvisa nel caso in cui vengano modificati dei file), alla WordPress Tweaks (per disattivare opzioni non necessarie e regolare l’accesso a risorse di WordPress) e tanto altro ancora, davvero. Prenditi il tempo necessario, studia tutte le possibilità offerte dal plugin, valuta se l’opzione Pro (a pagamento) proposta dallo stesso sviluppatore fa al caso tuo, imposta la migliore configurazione tenendo presente che in caso di configurazione errata o particolarmente cattiva, potrebbe chiuderti fuori dalla porta senza neanche passare dal via e prendere le duemila lire.

Quanto fatto però non basta, perché se l’attacco è verso uno specifico URL esistente, dovrai temporaneamente mettere offline il contenuto, oppure scegliere di cambiargli indirizzo, almeno per un periodo durante il quale ogni attacco non andrà a buon fine e porterà direttamente al ban, raccogliendo una serie di IP dai quali proteggersi. Concludi l’operazione andando a rimettere a posto il file .htaccess precedentemente modificato, per permettere a tutti di accedere nuovamente al blog. Le risorse del provider saranno ora più che sufficienti e potrai sopportare nuovamente il tuo carico di visite, quelle vere e assolutamente gradite.

Dopo aver adottato la soluzione, ho potuto rimettere abbastanza rapidamente online il contenuto precedentemente attaccato, che ancora oggi fa parte degli archivi di questo blog e che spero possa rimanere lì per molto altro tempo (no, non dirò di quale si tratta) :-)

L’area commenti è –come sempre– a totale disposizione per ulteriori soluzioni, alternative, commenti, critiche costruttive e per raccolte di “beneficenza“, che Natale si avvicina e sta baracca bisogna pur pagarla per tenerla viva e vegeta.

Estote parati (cit.).

G

WordpressHackSourceCodeSe usi WordPress sai già che l’avatar di ciascun autore viene generalmente cercato (e quindi caricato, se trovato) su Gravatar, ottimo servizio (realizzato e tenuto in piedi da chi di WordPress dovrebbe intendersene, ;-)) che centralizza la gestione dei propri avatar, permettendoti di stabilire le corrispondenza tra indirizzo di posta elettronica utilizzato e immagine da mostrare. Dato però che alcuni non lo utilizzano, il problema del “cosa mostro” si pone nel momento in cui questi diventano autori di un blog che mostra quella fotografia mancante, generalmente rimpiazzata da una delle proposte di default di WordPress, non esattamente il massimo della bellezza.

Come rimediare? Semplice. Si definisce un “Custom Avatar” aggiuntivo che magari mostri il logo del sito web (o del prodotto che si intende far conoscere) e lo si fa comparire tra le possibili scelte dell’impostazione Default Avatar (quella che si trova sotto SettingsDiscussionAvatars) in Dashboard amministrativa. Ho aperto il file functions.php del tema di Fuorigio.co (dove il problema si è presentato) e ho aggiunto questo codice (te lo spiego subito dopo):

// New Default Avatar - Personalizzato Fuorigio.co
function fCoCustomAvatar ($avatar_defaults) {
    //$myavatar = get_bloginfo('template_directory') . '/images/IlTuoAvatar.png';
    $myavatar = 'http://www.gravatar.com/avatar/7fe86e7de2f3b97891004619d394ac9b?s=100';
    $avatar_defaults[$myavatar] = "Custom Fuorigio.co";
    return $avatar_defaults;
}
add_filter( 'avatar_defaults', 'fCoCustomAvatar' );

Altro non è che l’ennesima funzione che va a ritoccare il comportamento predefinito del software, specificando un nuovo avatar che si andrà ad aggiungere a quelli proposti da installazione pulita di WordPress. Fai attenzione a:

//$myavatar = get_bloginfo('template_directory') . '/images/IlTuoAvatar.png';
$myavatar = 'http://www.gravatar.com/avatar/7fe86e7de2f3b97891004619d394ac9b?s=100';

Sono due righe che in realtà si occupano di fare la stessa operazione, puoi togliere e posizionare il commento (//) dove preferisci, in base all’esigenza. La prima (commentata, nel mio caso) prevede l’utilizzo di una immagine (IlTuoAvatar.png) che dovrai inserire nella cartella “images” del tuo tema. Ovviamente potrai cambiare il nome dell’immagine e la posizione in cartella in base alla tua situazione.

La seconda (quella che utilizzo) non carica l’immagine dalla cartella del mio hosting, ma pesca direttamente un file online, dai server di Gravatar. Il pro di questa scelta è che rendi dinamico il cambio dell’immagine (gestita tramite Gravatar e associata a uno specifico indirizzo di posta, appunto), il contro è che, nel caso in cui il servizio non funzioni correttamente, non verrà visualizzata sul tuo sito web, rallentandone anche il caricamento di pagina. Pillola rossa o pillola blu? ;-)

$avatar_defaults[$myavatar] = "Custom Fuorigio.co";

Determina il nome dell’avatar di default che potrai selezionare nella lista di quelli disponibili. È un fattore puramente estetico ma -si sa- anche l’occhio vuole la sua parte. Il resto può e deve rimanere invariato. Una volta salvato il file e caricato nuovamente sullo spazio FTP (a meno di non fare la modifica in diretta), aggiorna la pagina delle opzioni di Discussion, dovresti poter finalmente notare il risultato della tua “fatica“:

WordPress: aggiungere un avatar di default (per chi non ce l'ha)

Selezionalo, salva le modifiche, goditi la novità.

Cheers.

p.s. Se non vuoi star lì a modificare il codice del tuo functions.php, puoi sempre ricorrere a un plugin che faccia lo stesso identico lavoro, come “Add New Default Avatar“:

Add New Default Avatar
Developer: Kailey (trepmal)
Price: Free

Ho da poco scelto di sostituire un compagno fedele che per anni ha protetto l’accesso a questo blog (e non solo questo), chiedendomi sempre un codice di autenticazione insieme alla password del mio account. Sai già quanto ho spesso parlato in passato di autenticazione in due passaggi e quanto è importante per proteggere l’accesso ai servizi che utilizzi.

WordPress: suggerimenti sulla gestione delle immagini 3

Il tuo blog WordPress non fa certo eccezione, per anni (in concomitanza con l’attivazione 2-Step per il mio account principale Google, da poco rinnovata) ho utilizzato (e mi sono trovato bene) il plugin gratuito Google Authenticator:

Google Authenticator
Developer: Henrik Schack
Price: Free

Una rapida configurazione per ciascun account utente, procedendo in autonomia tramite area personale (quella con tutti i dettagli dell’account WordPress) ed ecco servito il campo Authenticator come obbligatorio per poter procedere, la migliore condizione è quella nella quale non si prevede una password per accesso applicativo (per esempio per utilizzare il blog dall’applicazione WordPress per iOS o Android) così da evitare ulteriori rischi. Perché quindi ho scelto di cambiare? Maggiore comodità e standardizzazione riferita all’utilizzo di Authy, applicazione che permette di generare codici di autenticazione 2-Step della quale ti ho già parlato in passato. È proprio suo il plugin in uso adesso, che permette tra l’altro di sfruttare un’autenticazione “OneTouch” estremamente comoda e simile a quella pensata e realizzata da Google.

Il plugin di Authy: configurazione e test

Installa e attiva il plugin di Authy, lo trovi (come al solito) nell’area pubblica su WordPress.org (raggiungibile quindi anche da Dashboard):

Authy Two Factor Authentication
Developer: various
Price: Free

Ora, per poter utilizzare il plugin, dovrai fornire una chiave API (gratuita) che dovrai generare dal sito web del produttore, all’indirizzo authy.com/signup (ti confermo che occorrerà creare un account Twilio per generare l’API Key di Authy, giusto per tua sicurezza). Grazie all’account appena registrato, potrai poi fare accesso anche a dashboard.authy.com, sito web dal quale gestire l’applicazione appena generata (e attraverso la quale hai ottenuto la chiave API per configurare il plugin nel tuo blog) e crearne di nuove senza ovviamente dover registrare ogni volta un nuovo account.

Copia la chiave API, torna su WordPress e incollala nel campo Authy Production API Key delle impostazioni del plugin:

WordPress e Authy: autenticazione OneTouch 4

Assicurati di aver abilitato la possibilità di autenticarsi in due fattori per le categorie di utenti che desideri (nel mio caso le ho selezionate tutte) e di rendere obbligatorio il doppio fattore (l’opzione avrà validità solo per chi poi andrà ad abilitare l’autenticazione in due fattori nel proprio profilo del blog), quindi fai clic su Save Changes per confermare.

Il plugin, se nulla è andato storto, sta già facendo il suo lavoro e permette già un’autenticazione in due passaggi. Per poterlo verificare, ti basterà andare nel tuo profilo sul blog, quindi scorrere la schermata e andare ad abilitare la Two-Factor Authentication, come in immagine:

WordPress e Authy: autenticazione OneTouch

Questo farà partire la procedura di verifica, la quale richiederà anche il tuo numero di telefono (ti verrà inviato un codice via SMS per confermare la tua identità). Una volta immesso il codice ricevuto, l’autenticazione in due fattori sarà finalmente attiva.

Prova a disconnetterti dal blog. Ricollegati subito dopo, dovresti poter vedere il solito blocco di richiesta username e password. Una volta superata la prima autenticazione, ti troverai davanti alla necessità di inserire il codice 2-Step generato da Authy. Se inserendolo e confermando il login passi questo ulteriore controllo, vorrà dire che hai portato a termine il tuo lavoro in maniera corretta :-)

(Se non hai passato il controllo e non riesci più ad accedere alla tua Dashboard, puoi sempre andare a cancellare o rinominare la cartella del plugin via FTP, questo basterà ad eliminare l’ostacolo e permetterti di autenticarti come amministratore nuovamente, per andare a verificare cosa è andato storto).

OneTouch

Non mi sono dimenticato. Ho scelto di parlarti di OneTouch in un paragrafo separato perché si tratta di qualcosa in più rispetto al funzionamento base di Authy. OneTouch permette infatti di autorizzare l’accesso al proprio blog con un semplice clic, una volta aperta l’applicazione sul proprio smartphone. Ciò non implica il fatto di dover escludere l’autorizzazione 2-Step con codice generato randomicamente, è semplicemente un diverso tipo di “ultima autorizzazione” e sarà sempre possibile scegliere di utilizzare ancora il codice numerico.

Per attivare OneTouch, ti basterà tornare nelle opzioni del plugin di Authy e abilitare la funzione che si trova nella parte finale della pagina delle opzioni. Verrai così collegato alla Dashboard del prodotto (quella di cui ti ho parlato prima) dove confermerai l’attivazione del servizio, che verrà così messo a disposizione delle categorie di utenti da te selezionati.

Salvo errori, potrai ora disconnetterti e riconnetterti al tuo blog per verificare il funzionamento della modifica. Una volta autenticato con username e password, dovresti poter arrivare a una schermata molto simile a questa:

WordPress e Authy: autenticazione OneTouch 3

Dovrai ora aprire l’applicazione di Authy sul tuo smartphone e confermare che si tratta di una tua richiesta di accesso. Per comodità, ti propongo qui di seguito i collegamenti rapidi al download dell’app su iTunes Store e Play Store.

Authy
Developer: Authy Inc.
Price: Free
Authy 2-Factor Authentication
Developer: Authy
Price: Free

La schermata che vedrai, dovrebbe essere molto simile a questa:

WordPress e Authy: autenticazione OneTouch 5

Da questa potrai approvare il tuo accesso. Dopo un paio di secondi circa, il blog ti lascerà passare e accedere così alla Dashboard amministrativa, senza la necessità di inserire un ulteriore codice random :-)

Comodo, facile, veloce da implementare, ti assicuro che è stato forse più difficile parlarne che mettere il tutto in pratica.

Non so se ti è mai capitato di dover sostituire in un solo colpo tutti i riferimenti a un testo o un link ben preciso all’interno degli articoli del tuo blog. A me si, è arrivata la richiesta (non molto tempo fa a dirla tutta) di modificare i puntamenti verso un sito web che ha cambiato dominio, e che avevo citato in diverse occasioni qui nel mio blog. Si è trattata di una domanda lecita alla quale ho dato risposta portando a termine la modifica. Ho eseguito una semplice query MySQL via phpMyAdmin, ma ho voluto cercare un’alternativa nel caso in cui di fronte al monitor ci sia una persona che non si fida delle operazioni a cuore aperto sul database.

WordPress: suggerimenti sulla gestione delle immagini 2

L’alternativa che ho trovato e provato si chiama Better Search Replace, è gratuita e si trova nel repository ufficiale dei plugin di WordPress:

Better Search Replace
Developer: various
Price: Free

È un plugin molto utilizzato, perfettamente compatibile anche con le ultime versioni di WordPress e non fa altro che simulare il tuo intervento sul database MySQL, facilitando (e di molto) la costruzione di ciò che si vuole ritoccare, lasciando al codice sorgente ciò che potrebbe esserti più ostico da imparare e saper maneggiare. L’utilizzo è banale e può simulare l’operazione prima di lanciarla sul serio, così da permetterti di capire cosa il programma andrà a ritoccare nel tuo database dove le tabelle di WordPress potrebbero contenere il testo o i collegamenti da modificare.

Dalla dashboard del blog, ti basterà accedere a ToolsBetter Search Replace, da qui potrai vedere le tabelle contenute all’interno del database (box Select Tables), le quali saranno selezionabili proprio per permettere al plugin di effettuare la ricerca al loro interno, con eventuale successiva sostituzione testo. Nel box Search for andrà inserito il testo da ricercare all’interno delle tabelle, mentre in Replace with ciò che prenderà il suo posto. Se vuoi assicurarti che nulla andrà storto, seleziona l’opzione in corrispondenza di Run as dry run? (If checked, no changes will be made to the database, allowing you to check the results beforehand), ti permetterà di ottenere comunque un risultato a video (potrai anche leggerne il dettaglio come da seconda schermata nella galleria di seguito), ma senza effettuare realmente la modifica al database.

Tutto pronto? Sei tranquillo? Ok, lancia la modifica allora, non impiegherà poi tanto (a meno di voler sostituire mezzo contenuto dei database). Al termine ti verrà notificato e potrai -se vorrai- disattivare o disinstallare il plugin se non lo ritieni più utile.

Questo tipo di modifiche le ho operate in passato anche tramite Redirection, il plugin ben più complesso e ideato per altri motivi, ma che può tornare utile anche per questo mestiere. Se lo utilizzi già, sappi che ti basterà cercare parte dell’URL che vuoi sostituire e farlo anche tramite lui, è solo un pelo più macchinoso e forse lento.

Ricordi l’articolo dedicato all’ottimizzazione delle immagini del tuo WordPress? (se non lo ricordi, dagli un’occhiata adesso!). Sono stato contattato poco dopo da Alex Florescu, fa parte del team di ShortPixel, sito web e nome del prodotto che ho avuto modo di provare su questa installazione WordPress (Gioxx’s Wall).

È questo prodotto che si occupa dell’ottimizzazione delle immagini al posto tuo, che le recupera, modifica e ricarica sostituendo le originali decisamente più esose di spazio e spesso ricche di informazioni non utili ai fini del tuo articolo, mettendo al riparo lo spazio disco e la banda che sarà necessario utilizzare per fornire i contenuti ai tuoi lettori, il tutto aggiungendo un ulteriore strato di sicurezza, tenendo un backup delle immagini originali (che potrai poi cancellare quando sarai sicuro che tutto è a posto, nulla di perso). Ti racconto com’è andata :-)

WordPress: ShortPixel Image Optimizer

Installazione, attivazione, registrazione al sito web per ottenere la chiave API personale e collegare il blog al servizio, senza la quale non lo si potrà utilizzare. Se ti registri utilizzando questo collegamento, otterrai 100 ottimizzazioni in più rispetto al piano base (andando così a 200, altrimenti ne avrai solo 100 gratuite al mese, altrimenti dovrai scegliere le offerte premium). Il plugin funziona in maniera assolutamente intuitiva, permetterà una ottimizzazione in bulk (tutte le immagini, un processo di ottimizzazione unico che dura dall’inizio alla fine) oppure una selezione di ciò che ti interessa, in maniera decisamente più specifica. Ti proporrà infatti una colonna nuova all’interno della schermata Media, dalla quale potrai lanciare ogni singola ottimizzazione, dell’immagine principale così come dei rimpicciolimenti (thumbnails):

WordPress: ShortPixel Image Optimizer 10

Io ho scelto di effettuare un unico processo escludendo solo i rimpicciolimenti (per il momento), per capire che tipo di lavoro ho fatto fino ad oggi, scegliendo immagini già parzialmente ottimizzate, mai esagerate troppo oltre la risoluzione massima che posso ospitare io nel corpo articolo del blog. Ho atteso circa 6 ore per far digerire al servizio circa 3700 immagini, e pensa che su questa installazione ho meno di duemila articoli (fai i tuoi conti: su fuorigio.co, cavia del mio precedente articolo, ce ne sono 4400, che fanno uso di circa 23000 immagini!).

Per poter far avanzare il processo di ottimizzazione, sarà necessario tenere attiva una tab del proprio browser, puntata (come prevedibile) all’indirizzo dell’area amministrativa del plugin di ShortPixel, la quale ti mostrerà sempre l’ultima immagine ottimizzata (a rotazione) con relativa percentuale di spazio salvato su disco. Potrai ovviamente chiudere questa tab, ma il processo si fermerà fino a quando non ci tornerai su. La tua “prima volta” sarà completamente guidata, sarà infatti ShortPixel a dirti quante immagini ha trovato nella tua installazione WordPress e quante potrà quindi ottimizzarne, tu dovrai solo scegliere qualche impostazione e capire se vuoi (o no) includere le thumbnails. Sei pronto? Fai partire il bulk! Ora porta pazienza (tanta) e se puoi lascia una finestra del tuo browser preferito aperta, anche ridotta a icona, poco importa, l’importante è che quella sessione venga tenuta viva. Ti accorgerai del lavoro in background di ShortPixel perché un’icona del software si piazzerà nella barra amministrativa del tuo WordPress, facendo comparire inoltre una gif di “loading” sopra di essa.

Ho terminato!

Bravo, ora che hai terminato il processo di ottimizzazione potrai vederne le relative statistiche, renderti conto dello spazio che sei riuscito a salvare di quello a te riservato, quanta banda risparmierai da ora in poi, traducendola in tempi più rapidi nel caricamento della pagina web sui browser dei tuoi lettori, importantissimo ai fini del SEO ma soprattutto a quelli della pazienza del visitatore, che potrà così accedere ai tuoi contenuti immediatamente, senza rinunciare a nulla!

WordPress: ShortPixel Image Optimizer 9

Ricorda che in questo momento hai ancora una cartella di backup all’interno della quale ShortPixel ha salvato tutte le tue immagini in originale, potrai sempre decidere di fare pulizia dopo qualche tempo, quando sarai sicuro e in pace con te stesso (ommioddio, non voglio perdere le mie immagini!) ;-)

ShortPixel è un ottimo plugin che può sostituire quello realizzato da TinyPNG (con buona pace della vostra anima e della poca pazienza nei confronti dei bug non ancora chiusi, ne so qualcosa, soprattutto perché credono che l’anomalia da me segnalata possa essere settata come “risolta” nel loro forum di supporto, vabè). Sono molto inferiori le ottimizzazioni gratuite mensili, ma il servizio sembra essere decisamente più robusto e ben funzionante, in scioltezza, senza troppi pensieri per la testa (è una scatola chiusa che fa il mestiere che promette). Sono rimasto estremamente soddisfatto e ringrazio Alex per avermi proposto questo test. Il plugin, ovviamente, è disponibile nel repository ufficiale di WordPress.org:

ShortPixel Image Optimizer
Developer: AlexSP
Price: Free

Prima di concludere, ti ricordo che utilizzando questo collegamento potrai ottenere 100 ottimizzazioni mensili in più, gratuite, stai pensando di dargli una possibilità? Faresti bene :-)

Disclaimer per un mondo più pulito
Gli articoli che appartengono al tag "Banco Prova" riportano la mia personale esperienza con prodotti generalmente forniti da chi li realizza. In alcuni casi il prodotto descritto rimane a me, in altri viene restituito. In altri casi ancora sono io ad acquistare il prodotto e decidere di pubblicare un articolo ad-hoc in seguito, solo per il piacere di farlo e condividere con voi i miei pensieri. Ogni articolo rispetta -come sempre- il mio standard: nessuna marchetta, solo il mio parere, riporto i fatti, a prescindere dal giudizio finale.

Prodotto: tutti i crediti ottimizzazione utili ai fini del test, sono stati forniti da ShortPixel.