Documentazione WP Simple Pay

Documentazione, Materiali di Riferimento e Tutorial per WP Simple Pay

Come risolvere i problemi causati da plugin di cache e ottimizzazione

Tempo di lettura: 4 minuti | Difficoltà: Principiante

Panoramica

I plugin di caching e le cache del web host velocizzano il tuo sito salvando una copia di ogni pagina e servendo tale copia ai visitatori successivi. I plugin di ottimizzazione vanno oltre e minificano, combinano o ritardano il JavaScript del tuo sito. Entrambi sono utili per le prestazioni, ma possono interferire con i moduli di pagamento se sono configurati in modo troppo aggressivo.

Dalla versione 4.17.5 di WP Simple Pay, i moduli di pagamento funzionano su pagine completamente memorizzate nella cache. Ogni modulo carica le proprie impostazioni e un nuovo token di sicurezza dal tuo sito all'apertura della pagina, quindi la copia memorizzata nella cache della pagina non contiene più nulla che possa scadere. Non è più necessario escludere le pagine del modulo di pagamento dal caching.

Questa guida copre le due cose che richiedono ancora attenzione: mantenere le pagine di conferma del pagamento fuori dalla cache e mantenere gli script di WP Simple Pay fuori dalle ottimizzazioni JavaScript.

Prerequisiti

  • WP Simple Pay 4.17.5 o versioni successive. Nelle versioni precedenti, le pagine del modulo di pagamento devono essere escluse dal caching o memorizzate nella cache per non più di 12 ore.
  • Accesso alle impostazioni del tuo plugin di caching o ottimizzazione, o al team di supporto del tuo web host se la cache viene eseguita sul server.

Caching

Pagine del modulo di pagamento

Su WP Simple Pay 4.17.5 e versioni successive, le pagine che contengono un modulo di pagamento possono essere memorizzate nella cache come qualsiasi altra pagina. Quando un visitatore apre la pagina, ogni modulo recupera i propri dati dall'API REST del tuo sito. Il pulsante di pagamento rimane disabilitato finché il modulo non è pronto, quindi un clic anticipato non può inviare un modulo incompleto.

Se hai escluso le tue pagine del modulo di pagamento dal caching in una versione precedente, puoi lasciare l'esclusione o rimuoverla. Entrambe le opzioni funzionano.

Appena aggiornato? Svuota la cache del tuo sito una volta dopo l'aggiornamento alla versione 4.17.5. Le pagine memorizzate nella cache prima dell'aggiornamento contengono ancora il vecchio codice del modulo finché non vengono aggiornate.

Pagine di Conferma Pagamento

Mantieni le tue pagine di successo e fallimento del pagamento escluse dal caching. Queste pagine mostrano i dettagli di un pagamento specifico, quindi ogni cliente deve ricevere una pagina generata di fresco.

Con alcuni web host, la cache viene eseguita sul server e non può essere modificata da WordPress. In tal caso, contatta il tuo host e chiedi loro di escludere gli URL delle tue pagine di conferma dal caching.

Configura plugin specifici

Ottimizzazione JavaScript

I problemi JavaScript causati dai plugin di ottimizzazione derivano solitamente da queste funzionalità:

  • Minify
    Rimuove caratteri non necessari dal codice, come spazi bianchi, per produrre un file più piccolo.
  • Combine
    Unisca file JavaScript separati in uno solo per ridurre il numero di richieste al server.
  • Load Deferred/Asynchronously
    Ritarda il caricamento o l'esecuzione dei file JavaScript in modo che la pagina non debba attendere.

Escludi i seguenti file da ogni impostazione di ottimizzazione JavaScript, qualunque plugin tu utilizzi:

js.stripe.com/v3/
simpay-public-shared.js
simpay-public-upe.js
accounting.min.js
simpay-public-pro-upe.js

Cosa deve lasciare inalterato l'ottimizzazione

I moduli di pagamento necessitano di un piccolo set di impostazioni del sito prima di poter essere caricati: l'indirizzo REST API del tuo sito, il formato della tua valuta e il messaggio mostrato quando un modulo non può essere caricato. WP Simple Pay stampa queste impostazioni in due punti:

  • All'interno dell'HTML di ciascun modulo di pagamento, nell'attributo data-simpay-general del modulo. Questa copia fa parte del modulo stesso, quindi viene memorizzata nella cache insieme alla pagina.
  • In un piccolo script alla fine della pagina, <script id="simpay-shared-js-extra">, che definisce spGeneral.

Dalla versione 4.17.6 di WP Simple Pay, un modulo viene caricato finché una delle due copie è presente nella pagina. Alcuni plugin di ottimizzazione rimuovono o ritardano piccoli script inline come il secondo, e il modulo ora utilizza la propria copia quando ciò accade.

Per mantenere funzionanti i moduli di pagamento, assicurati che il tuo plugin di ottimizzazione non:

  • Rimuova gli attributi HTML dal tag <form> del modulo di pagamento, in particolare data-simpay-form-id e data-simpay-general.
  • Rimuova sia l'attributo data-simpay-general sia lo script simpay-shared-js-extra. Se entrambi vengono rimossi, il modulo non può essere caricato.

Configura plugin specifici

Risoluzione dei problemi

“Questo modulo di pagamento non è stato possibile caricarlo”

Se i visitatori vedono Questo modulo di pagamento non è stato possibile caricarlo. Si prega di aggiornare la pagina e riprovare. sotto il pulsante di pagamento, il modulo non è riuscito a recuperare i suoi dati dal tuo sito. Questo è solitamente causato da qualcosa che blocca l'API REST del tuo sito:

Errori di token di sicurezza

Errori come Controllo di sicurezza coupon fallito o Nonce cookie non valido erano in passato causati da pagine memorizzate nella cache che contenevano token di sicurezza scaduti. Dalla versione 4.17.5, i moduli recuperano un nuovo token ogni volta che vengono caricati, e i token scaduti nelle richieste degli ospiti vengono recuperati automaticamente. Se continui a vedere questi errori dopo l'aggiornamento, svuota la cache del tuo sito. Vedi Come risolvere l'errore 'Controllo di sicurezza coupon fallito' per maggiori dettagli.

Domande frequenti

Ho ancora bisogno di escludere le pagine dei moduli di pagamento dalla cache?

No, non su WP Simple Pay 4.17.5 o versioni successive. Devi ancora escludere le tue pagine di conferma del pagamento.

Ho codice personalizzato che legge window.spGeneral. Funziona ancora?

Sì. Quando lo script del footer è presente, window.spGeneral viene impostato da esso, come prima. Quando un plugin di ottimizzazione ha rimosso tale script, WP Simple Pay imposta window.spGeneral dall'attributo data-simpay-general del modulo di pagamento non appena i suoi script vengono caricati, in modo che il tuo codice veda gli stessi valori.

Ho codice personalizzato che legge window.simplePayForms. Funziona ancora?

Sì. L'oggetto è ancora disponibile e l'immissione di ciascun modulo viene aggiunta man mano che i dati di quel modulo arrivano. Se il tuo codice viene eseguito non appena la pagina viene caricata, potrebbe essere necessario attendere il completamento del caricamento del modulo.

Cosa fare dopo?

Hai ancora domande? Siamo qui per aiutarti!

Ultima modifica:

Inizia ad Accettare Pagamenti Oggi

Inizia ad accettare pagamenti una tantum e ricorrenti o donazioni sul tuo sito WordPress.