Checkout WooCommerce nu funcționează: Cum să o remediați

Publicat: 2020-12-26

Aveți probleme cu pagina dvs. de plată? Nu funcționează corect procesul de achiziție WooCommerce? Vă avem acoperit. În acest ghid, veți învăța cum să remediați cele mai frecvente probleme de pe pagina de finalizare a comenzii, astfel încât să vă puteți deschide magazinul în cel mai scurt timp .

Fiecare proprietar de magazin știe că checkout-ul este cea mai importantă pagină pentru un magazin WooCommerce, deoarece este pasul în care închideți vânzarea. Cu toate acestea, este și una dintre paginile care înregistrează cea mai mare rată de abandon a coșului. Studiile arată că majoritatea cumpărătorilor abandonează la casă din cauza costurilor suplimentare, deoarece este prea lung sau complicat, sau dacă site-ul nu pare demn de încredere.

Am văzut deja cum să personalizăm modul de finalizare a comenzii și diferite strategii de optimizare a plății în WooCommerce. Nu este un secret pentru nimeni că un proces optimizat vă va ajuta să creșteți conversiile și să vă creșteți vânzările. Luarea timpului pentru a-l lustrui poate avea un impact mare asupra magazinului dvs. online.

Cu toate acestea, este mai ușor de spus decât de făcut. Lucrurile pot merge prost și pot crea probleme pe pagina de finalizare a achiziției, care vă pot afecta serios afacerea. Prin urmare, în acest ghid, vă vom învăța diferite modalități de a depana cauzele posibile și de a remedia problemele atunci când finalizarea plății WooCommerce nu funcționează corect .

Cazarea WooCommerce nu funcționează? Cum să remediați problemele comune

Multe lucruri pot face ca procedura de casă să nu funcționeze corect. În această secțiune, vom arunca o privire asupra soluțiilor la cele mai frecvente probleme pentru a vă ajuta să aveți magazinul în funcțiune cât mai curând posibil.

1. Dezactivați pluginurile și temele

Cea mai obișnuită problemă care determină să nu mai funcționeze finalizarea plății în WooCommerce este o temă sau un plugin care creează conflicte . Cea mai eficientă soluție este să dezactivați toate pluginurile și să vedeți care dintre ele cauzează problema.

Puteți verifica acest lucru mergând la casă, făcând clic dreapta oriunde pe pagină și accesând Inspectare > Consolă . Dacă vedeți o eroare Javascript, atunci unele dintre pluginurile sau temele dvs. cauzează problema. Pentru a verifica ce plugin sau temă creează conflictul, aveți două opțiuni:

  1. Dezactivați pluginurile în bloc
  2. Utilizați pluginul Health Check

NOTĂ : Înainte de a începe, vă recomandăm să faceți o copie de rezervă completă a site-ului dvs. în cazul în care ceva nu merge bine. Chiar dacă dezactivarea și reactivarea pluginurilor nu ar trebui să cauzeze probleme, a avea o copie de rezervă vă va scuti de o mare bătaie de cap dacă o face.

Cu ambele opțiuni, ideea este să dezactivați momentan toate pluginurile (cu excepția WooCommerce) și să activați o temă implicită pentru sesiunea dvs. de utilizator. În acest fel, puteți activa pluginurile unul câte unul și puteți verifica care dintre ele provoacă conflictul. Dacă utilizați Verificarea sănătății, asigurați-vă că intrați în modul de depanare din /wp-admin/index.php?page=health-check&tab=troubleshoot . De asemenea, rețineți că acest instrument necesită o temă implicită, cum ar fi Twenty Seventeen sau Storefront, pentru a funcționa corect.

2. Încărcare nesfârșită a paginii de plată WooCommerce

O altă problemă comună care face ca procedura de finalizare a plății WooCommerce să nu mai funcționeze este încărcarea nesfârșită . În cele mai multe cazuri, AJAX provoacă problema. Pagina de revizuire a comenzii încarcă metodele de plată sau totalurile prin AJAX și aceasta afișează un rotor de încărcare.

Cu toate acestea, dacă există o problemă, secțiunea poate să nu reușească să se încarce sau spinnerul poate rămâne fără a încărca pagina. Dacă acesta este cazul tău, mai întâi aruncă o privire la WooCommerce > Stare sistem și verifică erorile.

Acestea sunt câteva dintre soluțiile la cele mai frecvente probleme:

Eroare AJAX cauzată de setările WordPress

O problemă comună care face ca procedura de finalizare a plății WooCommerce să nu mai funcționeze este că adresa WordPress (URL) și adresa site-ului (URL) nu se potrivesc. Solicitările AJAX funcționează numai pe același domeniu, așa că acele două adrese URL trebuie să se potrivească.

Pentru a verifica dacă acest lucru vă cauzează problemele, în tabloul de bord WordPress accesați Setări > General și asigurați-vă că câmpurile Adresa (URL) WordPress și Adresa site-ului (URL) se potrivesc. Checkout WooCommerce nu funcționează - Adresa WordPress și Adresa site-ului

Conflicte cu teme și pluginuri

După cum am menționat mai devreme, conflictele dintre pluginuri și teme sunt una dintre cele mai frecvente probleme care fac ca procedura de achiziție WooCommerce să nu mai funcționeze. Pentru a verifica dacă este cazul, accesați pagina care are probleme, faceți clic dreapta și accesați Inspectare > Consolă . Dacă vedeți o eroare JavaScript, problema este probabil cauzată de o temă sau un plugin.

Finalizarea WooCommerce nu funcționează - Eroare JS din consolă Dacă acesta este cazul, dezactivați toate pluginurile și temele urmând pașii descriși la punctul 1.

Probleme cauzate de e-mailurile tranzacționale

Uneori, e-mailurile tranzacționale legate de finalizarea comenzii pot face ca procedura de plată să nu mai funcționeze în WooCommerce. Dacă bănuiți că aceasta poate fi problema, puteți activa un filtru pentru a trimite e-mailurile după finalizarea comenzii. Acest lucru va accelera lucrurile și poate rezolva problema.

add_filter( 'woocommerce_defer_transactional_emails', '__return_true' );

Limită de memorie WordPress

Limita de memorie WP poate crea, de asemenea, probleme și poate împiedica funcționarea corectă a plății WooCommerce. Când se întâmplă acest lucru, veți vedea unul dintre aceste mesaje pe site-ul dvs.

 Eroare fatală: dimensiunea de memorie permisă de 33554432 octeți epuizat (a încercat să aloce 2356915 octeți) în /home4/xxx/public_html/wp-includes/plugin.php pe linia xxx

Sau

 Eroare 413: Entitatea solicitată este prea mare

Există două opțiuni pentru a remedia această problemă. Puteți:

  • Măriți-vă singur memoria
  • Contactați compania dvs. de găzduire

Dacă aveți niște abilități de codare și doriți să o remediați singur, puteți încerca oricare dintre aceste trei metode:

  • Editați fișierul wp-config.php
  • fișier PHP.ini
  • fișier .htaccess

Să aruncăm o privire asupra modului de localizare și editare pe fiecare dintre ele. Sfat profesionist: Următoarele metode implică editarea fișierelor de bază WordPress. Aceasta înseamnă că vă puteți sparge site-ul dacă ceva nu merge bine, așa că înainte de a-l edita, vă recomandăm să creați o copie de rezervă completă a site-ului. Dacă nu știți cum să o faceți, urmați acest tutorial.

A) Editați fișierul wp-config.php

Pentru a accesa și edita fișierul wp-config.php aveți două opțiuni:

  • cPanel
  • Client FTP

Dacă încercați opțiunea cPanel , veți găsi fișierul wp-config.php sub File Manager > public_html . Pe de altă parte, dacă utilizați un client FTP, fișierul wp-config.php se află în folderul public_html . Indiferent de metoda pe care o utilizați, trebuie să descărcați fișierul, să îl editați și să îl încărcați din nou.

Pentru a crește limita de memorie WP, adăugați următorul cod înainte de linia care spune Asta e tot, opriți editarea! Blogging fericit .

 define('WP_MEMORY_LIMIT', '256M');

Acest script îi spune practic WordPress să mărească limita de memorie PHP la 256 MB. Dacă acest lucru nu funcționează, puteți crește limita la 512 MB, dar în majoritatea cazurilor, 256 MB ar trebui să fie suficient.

NOTĂ : Este de remarcat faptul că memoria WordPress poate fi diferită de memoria serverului, așa că vă recomandăm să setați această limită indiferent de setările memoriei serverului dumneavoastră.

Alternativ, dacă nu vă simțiți confortabil să editați fișierele de bază, puteți contacta compania de găzduire.

B) Editați fișierul PHP.ini

O altă modalitate de a crește limita de memorie în WordPress este editarea fișierului PHP.ini . Pentru a face acest lucru, accesați folderul public_html sau oriunde ați instalat WordPress și căutați un fișier numit php.ini . Acolo, lipiți următoarea linie de cod pentru a crește limita la 256 MB.

 memory_limit = 256M
C) Editați fișierul .htaccess

O a treia opțiune pentru a crește limita de memorie WP și a remedia problema care poate face ca WooCommerce să nu mai funcționeze este editarea fișierului .htaccess . Acest fișier se află în folderul rădăcină , dar dacă ați instalat WordPress pe domeniul dvs. principal, veți găsi fișierul htaccess în folderul public_html . Acesta este un fișier ascuns, așa că asigurați-vă că activați fișierele ascunse.

După ce localizați fișierul .htaccess, lipiți acest cod pentru a crește limita de memorie:

 php_value memory_limit 256M

Eroare de apel AJAX cauzată de fișierul index.html

O altă problemă comună care poate face ca pagina de finalizare a plății WooCommerce să nu mai funcționeze corect este un răspuns nevalid de la un apel AJAX cauzat de un fișier index.html .

Pentru a remedia această problemă, accesați fila XHR (XMLHttpRequest) de pe consola dezvoltatorului și verificați răspunsul. Dacă răspunsul este HTML în loc de JSON, problema este probabil cauzată de un fișier index.html din directorul rădăcină.

Cel mai simplu mod de a remedia acest lucru este eliminarea fișierului index.html . Cu toate acestea, dacă nu doriți să ștergeți niciun fișier, puteți ajusta directiva de indexuri din setările serverului și să acordați prioritate index.php față de index.html .

Este demn de remarcat faptul că unele pluginuri de cache pot adăuga, de asemenea, HTML la răspunsul JSON, astfel încât acesta poate fi și cauza problemei dacă utilizați unul dintre aceste instrumente.

3. E-mailurile de confirmare nu conțin link-uri de descărcare

O altă problemă comună WooCommerce care vă poate cauza multe probleme este atunci când e-mailurile de confirmare pe care le trimiteți după ce un client achiziționează un produs descărcabil nu conțin link-uri de descărcare. După cum vă puteți imagina, acest lucru poate crea o mulțime de reclamații, deoarece utilizatorii nu pot descărca ceea ce tocmai au cumpărat.

Această problemă este cauzată de faptul că tabelul SQL wp_woocommerce_downloadable_product_permissions lipsește din baza de date. Acest lucru se întâmplă deoarece atunci când activați WooCommerce pe site-ul dvs., unele tabele SQL sunt adăugate în baza de date. Cu toate acestea, acest proces poate eșua uneori dacă prefixul tabelelor SQL WordPress, stocat în fișierul wp-config.php , este prea lung.

Pentru a remedia această problemă, trebuie să redenumiți prefixul tabelului SQL WordPress. Numele pot conține mai mult de 64 de caractere, așa că vă recomandăm să alegeți un prefix care să nu conțină mai mult de 20-25 de caractere.

Pentru a schimba prefixele tabelelor SQL WordPress, aveți două opțiuni:

  1. Utilizați pluginuri precum Schimbați Prefixul Tabelului sau Prefixul Brozzme DB. Aceste instrumente nu au fost actualizate de ceva timp, dar încă își fac treaba.
  2. Redenumiți tabelele manual. Pentru aceasta, va trebui să utilizați phpMyAdmin, să reduceți prefixul tabelului și să actualizați valoarea prefixului în wp-config.php . Apoi, dezactivați WooCommerce și reactivați-l pentru a forța crearea tabelelor SQL lipsă.

NOTĂ : Indiferent de metoda pe care o alegeți, vă recomandăm să creați o copie de rezervă a site-ului dvs. înainte de a începe.

4. Paginile nu se afișează în WooCommerce

Dacă aveți probleme cu paginile care nu afișează conținut. Pot exista mai multe motive pentru aceasta, dar în majoritatea cazurilor, următoarele vă vor ajuta să o remediați:

  • Creați o pagină nouă, adăugați codul scurt corect și publicați-l.
  • Apoi, accesați WooCommerce > Setări > General pentru a selecta pagina pe care tocmai ați creat-o și apăsați pe Salvare .

5. Eroare fatală: apel la funcția nedefinită is_woocommerce_active()

Dacă vă confruntați cu această problemă și pagina de finalizare a achiziției nu funcționează în magazinul dvs. WooCommerce, există două cauze probabile:

  • Pluginuri învechite
  • Teme de la terți

Pentru a rezolva această problemă, mai întâi, asigurați-vă că toate pluginurile sunt actualizate. Dacă asta nu remediază eroarea, dezactivează-ți tema, comută la Twenty Sixteen și activează din nou pluginul. Apoi, veți putea reveni la tema pe care o preferați.

6. Treceți la finalizarea comenzii și butoanele Plătiți cu PayPal nu funcționează

Dacă întâmpinați probleme cu butoanele Continuați la finalizare și plătiți cu PayPal și problema nu este cauzată de un conflict de plugin sau de temă, este posibil să o puteți rezolva cu puțin CSS. Uneori, unele containere < div> au un set flotant care poate cauza probleme .

Pentru a remedia acest lucru, puteți șterge elementele plutitoare după ce sunt terminate sau puteți seta overflow:hidden pe < div> care conține. În acest fel, tăiați debordarea și ascundeți restul conținutului.

Pentru a șterge float-urile din containerul <div> , în tabloul de bord WordPress , accesați Aspect > Personalizare > CSS suplimentar și inserați următorul cod:

 .e1120-2.x-container, .e1120-10.x-container { clear: both; }

Alternativ, puteți lipi codul în fișierul style.css al temei copilului. Dacă nu aveți o temă copil, puteți crea una sau utilizați unul dintre aceste pluginuri.

7. ssl_error_rx_record_too_long

Dacă pagina dvs. de plată WooCommerce nu funcționează și vedeți următoarea eroare:

 SSL a primit o înregistrare care a depășit lungimea maximă permisă.
(Cod de eroare: ssl_error_rx_record_too_long)

Există o configurare greșită a SSL/apache. Dacă acesta este cazul dvs., va trebui să vă contactați furnizorul de găzduire, deoarece nu este o problemă WooCommerce. Alternativ, dacă nu aveți nevoie să utilizați SSL, puteți dezactiva setarea Force SSL din WooCommerce > Setări .

În plus, puteți dezactiva opțiunea Forțare verificare securizată din fila Checkout . Checkout WooCommerce nu funcționează - Dezactivați Forțarea SSL

8. Butonul de plasare a comenzii nu funcționează

Dacă butonul Plasați comanda de pe pagina de finalizare a comenzii nu funcționează, probabil că există un conflict de temă sau de plugin . Pur și simplu urmați pașii descriși mai sus și vă veți pune în funcțiune magazinul în cel mai scurt timp.

9. erori session_start

Dacă vedeți astfel de avertismente în antetul site-ului dvs., există o problemă cu serverul dvs.

Avertisment: session_start() [function.session-start]: open(xxx) a eșuat: Permisiune refuzată (13) în xxx/wp-content/plugins/woocommerce/woocommerce.php pe linia XX

Acest lucru este cauzat de unul dintre aceste două lucruri:

  • Sesiunile PHP nu sunt configurate corect
  • Directorul de sesiuni (/ tmp ) nu poate fi scris

Pentru a remedia acest lucru, va trebui să contactați furnizorul dvs. de găzduire.

Ce să faceți când checkout-ul nu mai funcționează?

A avea probleme pe pagina de checkout este cel mai rău coșmar pentru orice magazin online. Cu toate acestea, dacă ai de-a face cu probleme cu checkout, nu te panica. Diferite probleme pot avea origini diferite, așa că poate fi dificil să știi ce cauzează problema.

În cele mai multe cazuri, un plugin sau un conflict de temă este de vină, așa că încercați să dezactivați mai întâi toate pluginurile și temele , așa cum este descris la punctul 1. Dacă asta nu rezolvă problemele, încercați diferitele soluții pe care le-am acoperit în acest ghid, în funcție de tipul de mesaj de eroare pe care îl primiți. Dacă nu găsiți soluția, puteți arunca o privire la ghidul de depanare WooCommerce.

Concluzie

Una peste alta, mai multe motive pot determina să nu mai funcționeze în WooCommerce . În acest ghid, v-am arătat mai multe soluții pentru a remedia cele mai frecvente probleme cu care se confruntă majoritatea utilizatorilor.

Unele dintre aceste probleme sunt mai ușor de rezolvat decât altele, dar în majoritatea cazurilor, le puteți rezolva fără a fi nevoie să contactați furnizorul dvs. de găzduire.

Ați putea să remediați problemele legate de pagina de finalizare a achiziției și să vă reactivați magazinul? Te confrunți cu probleme care nu sunt acoperite în acest ghid? Anunțați-ne în secțiunea de comentarii de mai jos! Vom fi bucuroși să vă ajutăm!