Cum sa faci tema multilingvala si compatibila cu WooCommerce

Matt Mullenweg, care este co-fondatorul WordPress și CEO-ul Automattic, a fost intervievat de Josh Janssen, unde a declarat că în luna mai a acestui an descărcările non-engleză ale WordPress au depășit pentru prima oară descărcările în limba engleză.


Această tendință continuă cu WordPress 4.0, care face localizate site-uri WordPress mult mai ușor de instalat și de întreținut. WordPress 4.0 vă oferă acum posibilitatea de a descărca WordPress în limba dorită. Acest lucru va face procesul de instalare o briza pentru difuzoarele non-engleză. În versiunile anterioare WordPress, limba engleză a fost implicită, iar alte limbi au fost tratate ca excepții. WordPress 4.0 face toate limbile la fel de accesibile. Această schimbare va face cu siguranță WordPress și mai popular în întreaga lume.


Scopul acestor noi caracteristici în WordPress 4.0 este de a aduce o creștere a numărului de utilizatori internaționali ai WordPress, care anterior nu au putut să utilizeze WordPress datorită dificultăților lingvistice. Mai mult, țările din Asia-Pacific, cum ar fi China, Japonia, India, Coreea de Sud și Indonezia, sunt proiectate să depășească America de Nord în vânzările de produse electronice de la consumatori la consumatori, potrivit eMarketer.

Ce înseamnă asta pentru tine ca o temă sau dezvoltator de pluginuri? În primul rând, înseamnă că produsul dvs. trebuie să fie gata pentru localizare. Toate textele trebuie să fie împachetate în apelurile "gettext", permițând utilizatorilor să le ruleze în alte limbi; totuși, internaționalizarea este doar primul pas. În multe țări, posibilitatea de a rula un site într-o singură limbă reprezintă o limitare majoră. Pentru a merge cu adevărat la nivel mondial și pentru a profita de potențialul imens din afara pieței de limbă engleză, produsele dvs. ar trebui, de asemenea, să fie pregătite în mai multe limbi.


Din fericire, cu WPML, rulează site-uri multilingve este ușor. Vom defini cele mai bune șapte bune practici de urmat, astfel încât temele și pluginurile dvs. să funcționeze excelent atât pe site-uri unice, cât și pe site-uri multilingve. Urmând aceste linii directoare și lipind codarea curată, produsele dvs. pot genera site-uri multilingve.


Modul în care utilizatorii finali vor traduce și ce trebuie să fiți pregătiți pentru

Când vă dezvoltați tema, este foarte important să înțelegeți modul în care utilizatorii finali vor traduce site-urile lor. Odată ce îți dai seama de perspectiva lor, îți vei da seama ce trebuie să faci pentru a-ți face tema multilingvă pregătită.


O temă tipică afișează un antet, subsolul, meniurile, widget-urile, conținutul și propriile elemente personalizate. Iată un exemplu de site WooCommerce, bazat pe tema modificată Twentyfourteen:


WPML vă permite să traduceți toate elementele standard WordPress. Aceasta include:

  • Meniuri

  • Widget-uri standard

  • Elemente de navigație

  • Toate textele înfășurate în apelurile "gettext"

  • Postați conținut, inclusiv câmpuri personalizate și taxonomie

  • Produse

  • Opțiuni temă

  • Imagini și șiruri de caractere legate de ele


Nu este nevoie să adăugați nimic în codul dvs. pentru a permite traducerea tuturor acestor secțiuni. Asigurați-vă că acordați atenție elementelor dvs. personalizate, astfel încât și utilizatorii dvs. să le poată traduce.


Mai jos este un tabel, care rezumă modul în care utilizatorul final va traduce elemente standard de site-uri cu WPML. 

Ce utilizatori finali pot traduce folosind WPML

Traduceți antetul folosind Instrumentul de traducere WPML String

Deoarece nu face parte dintr-o postare, pagină sau taxonomie, trebuie să folosim Traducerea șirului WPML pentru ao traduce. Mergeți la WPML-> String Translation, căutați șirul după conținutul său (titlul site-ului) și traduceți.

 

Traduceți meniurile WordPress

Când mergeți la Aspect> Meniuri, veți vedea comenzile de traducere din meniul WPML. Aflați mai multe despre traducerea meniurilor pentru a vedea cum funcționează aceasta.

Traduceți temă personalizată sau elemente de plugin

Multe teme sau pluginuri au caracteristici unice, care stochează texte în wp_options masa. Mesaj introductiv, de Resort face exact asta. Tema sau pluginul salvează aceste texte în tabela wp_options și trebuie să le spunem WPML să le traducă. Adăugăm aceste informații în fișierul de configurare a limbii. Acolo, îi spunem WPML care intrări în tabelul wp_options necesită traducere.

Această tehnică este bună atunci când tastele opțiunile sunt fixe (ca în majoritatea temelor). Dacă tema dvs. utilizează o serie de intrări, care ar putea crește odată cu introducerea de către utilizatori, trebuie să înregistrați dinamic aceste intrări. Utilizați funcțiile icl_register_string și icl_t ale WPML pentru a face acest lucru.

Traducerea postului

WPML permite utilizatorilor să traducă conținutul cu ușurință. Ecranele post-editare includ traducerea WPML controale, permițând crearea de noi traduceri și editarea celor existente.

Nu este nevoie să faceți nimic în temă sau plugin pentru a face acest lucru să se întâmple. Traducerea conținutului este o caracteristică principală a WPML.

Ceea ce trebuie să verificați este că orice text pe care tema dvs. o adaugă la ieșire este translatabil.

Dacă sunteți nou la utilizarea GetText, aflați mai multe despre aceasta în întrebările noastre despre traducerea textelor.

Traduceți widget-uri cu traducere de șir

WPML permite utilizatorilor să traducă conținutul widget-urilor text. De asemenea, se traduc titlurile tuturor celorlalte widget-uri. Dacă tema sau plugin-ul își creează propriile widget-uri personalizate, asigurați-vă că treceți titlurile lor prin filtrele standard WordPress. În acest fel, WPML va permite utilizatorilor să traducă titlurile widget-urilor dvs. prin intermediul ecranului Translation String.

Traducerea subsolului

 Unele teme au un ecran personalizat de administrare pentru a stoca textele subsolului. Ca și alte texte pe care le-am văzut, tema sau pluginul au salvat textele subsolului din wp_options și tabelul. Vom adăuga aceste intrări în fișierul de configurare a limbajului, spunând WPML să le traducă.

 



Pentru o explicație detaliată detaliată cu privire la modul în care utilizatorii finali vor folosi WPML, vizitați Tutorialul nostru privind atingerea compatibilității cu WPML.


Nu trebuie să rescrieți întreaga temă sau plugin, deoarece WPML se ocupă de toate acestea. Acest tutorial nu este la fel de greu ca alpinismul Mount Everest, dar există câteva lucruri pe care va trebui să le modificați pentru a vă ușura utilizatorul final.


Acum, că am acoperit modul în care oamenii vor traduce elementele standard WordPress, să analizăm împreună ce trebuie să faceți pentru a vă asigura compatibilitatea multilingvă pentru elementele dvs. personalizate.

Cele mai bune 7 cele mai bune practici pentru a vă face tema multilingvă și compatibilă cu WooCommerce

1. Adăugați funcții GetText la textul codificat

Pentru pluginuri sau teme, asigurați-vă că ați înfășurat textul cu coduri grele în funcțiile "gettext". Aceasta include antetul, subsolul și textul widgetului. Fișierele dvs. de șabloane afișează un sortiment de informații despre produs și textul codat pe hard. De exemplu, majoritatea șabloanelor vor include numele produsului și un link "cumpărați". Numele produsului provine din baza de date, deci nu trebuie să vă faceți griji cu privire la traducerea acestuia.

Ar trebui să vă asigurați că toate textele codate greu sunt translatabile, utilizând funcțiile "gettext".

Bun

Rău

"/>

"Produse similare" și "Cumpărați acum!" Nu sunt înfășurate în apelurile GetText.

Asigurați-vă că utilizați textul temei pentru toate apelurile GetText.

2. Utilizați funcțiile API pentru a vă conecta la paginile WooCommerce

Multe teme de comerț electronic includ pagini speciale, cum ar fi "carul" sau "contul". Tema include adesea link-uri către aceste pagini, care apar pe fiecare pagină a site-ului.


Dacă utilizați un meniu WordPress pentru aceste linkuri, trebuie să fiți setați. WPML afișează un meniu WordPress diferit pentru fiecare limbă, astfel încât linkurile spre această "pagină specială" vor fi diferite, pe fiecare limbă. Cu toate acestea, dacă hardcode aceste linkuri în fișiere șablon, trebuie să permiteți WPML să înlocuiască link-uri, cu link-uri către aceste pagini în limba corectă.


Calea potrivită pentru a conecta paginile speciale WooCommerce este prin utilizarea funcțiilor API WordPress și a ID-urilor paginii WooCommerce. Filtrele WooCommerce Filtrele multilingve fac apel la 'get_option ()' cu ID-urile paginii WooCommerce. Acesta va returna ID-ul paginii în limba curentă.


Bun

Rău

„>

„>

"magazin" este o pagină a paginii în limba implicită.

„>

ID-ul "paginii de magazin" este codat greu. Acesta va fi diferit pentru diferite site-uri și pentru diferite limbi.

Adresa URL a "magazinului" este codată în mod greu. Acesta va fi diferit pentru diferite limbi.

3. Adăugați liste de produse Multilingv-Ready

Dacă utilizați codurile scurte WooCommerce pentru a afișa lista de produse, sunteți toți setați. WooCommerce va încărca produsele în limba corectă și le va afișa.

Dacă preferați să încărcați manual produse, utilizând propriul cod, asigurați-vă că folosiți apelurile API WordPress sau API WooCommerce. Dacă accesați direct baza de date, WPML nu va filtra apelul dvs. și veți obține o combinație a tuturor produselor în toate limbile.

Bun

Rău

[featured_products per_page = "12" coloane = "4"]

[id-ul produsului = "99"]

(Mai Mult)

'produs', 'suppress_filters' => 0)); ?>

$ args = array (

'post_type' => 'produs',

'posts_per_page' => 10,

);

$ products = noua valoare WP_Query ($ args);

?>

'produs')); ?>

suppress_filters va fi setat la adevărat în mod implicit, prevenind filtrarea limbajului.

$ products = $ wpdb-> get_results ($ wpdb-> prepare ("SELECT * FROM $ wpdb-> posts WHERE post_type =" produs "ORDER BY ID DESC LIMIT% d", 10));

WPML nu filtrează interogări SQL de nivel inferior. Toate produsele în toate limbile vor fi returnate.

Odată ce ați încărcat produsele potrivite, nu trebuie să vă faceți griji cu privire la limbi atunci când le afișați. Fiecare produs va veni cu propriile câmpuri personalizate, cu informații în limba corectă.

4. Adăugați opțiuni de plată în mai multe valute

Unele site-uri globale de eCommerce au nevoie atât de mai multe limbi, cât și de mai multe valute. Tema dvs. ar trebui să sprijine acele site-uri care necesită multi-valută. Pentru multe site-uri non-americane, sprijinirea mai multor valute este o caracteristică foarte importantă. De exemplu, multe site-uri europene vor trebui să perceapă taxe în euro, în lire britanice și în dolari americani. Site-urile din Europa de Est necesită deseori ruble rusești și site-urile asiatice au nevoie de o varietate de alte valute diferite.

Suportul pentru mai multe valute este inclus în WooCommerce Multilingual. Pentru a permite vizitatorilor să comute între valute, tema dvs. ar trebui să includă un switch opțional de valută.

Puteți afișa un switch de valută fie utilizând un apel PHP, fie inserând un scurtcod.

"nume% (simbol%)")); ?>

[Currency_switcher]

Pentru un tutorial complet, vizitați tutorialul de mai multe valute pentru WooCommerce. Rețineți că comutatorul valutar se va afișa numai dacă site-ul utilizează mai multe valute.

5. Devino RTL compatibil

Engleză - LTR

Ebraică - RTL


Temele WooCommerce trebuie să respecte liniile directoare RTL, la fel ca temele WordPress. Ar trebui să creați un fișier "rtl.css", cu regulile CSS pentru afișarea RTL.

Creați un nou fișier "rtl.css" și puneți-l în directorul rădăcină al temei. Direcția "direcții" în CSS va face cea mai mare parte a lucrului și trebuie doar să faceți patch-uri pe câteva locuri. Pentru limbile RTL, setați atributul "direcție" în CSS la "rtl". Adăugați, de asemenea, atributul unicode-bid.

Afișarea bunului RTL a fost adăugată selectorului .body:


Direcția: rtl;

unicode-bidi: încorporați;


Acum, tema dvs. va fi afișată în RTL. Pentru a trata excepțiile, accesați Ghidul de asistență pentru temele RTL.

6. Gestionați diferite lungimi de text în diferite limbi

Când creați tema WooCommerce pregătită pentru mai multe limbi, înțelegeți că unele texte vor fi mai lungi în anumite limbi și mai scurte în altele. Unele lungimi de limbă, nu puteți testa, deoarece utilizatorii finali vor traduce conținutul pe cont propriu.

De exemplu, uitați-vă la aceste două blocuri de produse.


CSS optimizat pentru text scurt în limba engleză

Textul spaniol mai lung nu se potrivește spațiului

Cea mai bună modalitate de a obține compatibilitate cu lungimea mai mare este să vă testați tema cu texte cu x2 mai lungi și ½ mai scurte. În majoritatea cazurilor, aceasta va acoperi orice limbă tradusă. Este recomandat să utilizați machete fluide pentru a gestiona textul de dimensiuni diferite. O structură fluidă va permite fiecărui element să redimensioneze și să capteze zona necesară. Obținerea unui aspect fluid necesită timp, dar împiedică apariția unor probleme grave.

Textul se deplasează perfect pe Linia Următoare fără glisare afișaj

WooCommerce "style.css" utilizează denumirea "white-space: no-wrap". Dar în exemplul nostru, pentru a împacheta textul în mod corespunzător, trebuie să utilizați "spațiu alb: normal";.

7. Creați un fișier de configurare a limbii

Pentru a vă face tema compatibilă în întregime cu WPML, ar trebui să ușurați ca ceilalți să ruleze site-uri multilingve cu tema, creând un fișier de configurare a limbii.

WPML poate citi un fișier de configurare care detaliază ce trebuie tradus în temă sau plugin. Creați și denumiți fișierul "wpml-config.xml". Salvați fișierul în directorul rădăcină al temei. Utilizați structura și aspectul secțiunii din exemplul din acest exemplu de fișier wpml-config.zip și editați-l cu propriul dvs. conținut personalizat.

Conținutul din fișierul "wpml-config.xml" trebuie să fie înfășurat în următoarele etichete de deschidere și închidere:



În fișierul "wpml-config" setați ce caracteristici trebuie să fie traduse prin WPML, tipurile personalizate de postări, taxonomiile personalizate, câmpurile personalizate și textul de administrare (șirul provenind din wp_options) și puteți seta și modul în care limba temei dvs. switcher va arăta doar urmați acest tutorial scurt pentru exemple complete și detalii despre structurarea fișierului de configurare a limbii vizitați Tutorialul nostru de configurare a limbii.

Testați-vă site-ul

Acum că ați înțeles necesitatea de a vă pregăti tema sau pluginul multilingv și WooCommerce și după ce urmați practicile de dezvoltare obișnuite așa cum au fost prezentate mai sus, este timpul să vă testați tema sau pluginul.


De obicei, atunci când testați, ați încerca să traduceți totul introducând traduceri manuale în fiecare zonă a site-ului dvs. Dar asta ar lua mult timp. Prin urmare, am creat un instrument de testare pentru dvs.: Plugin WPML Compatibility Test Tools.


Acest instrument va injecta traduceri manuale pentru site-ul dvs., astfel încât să puteți schimba limbile și să vedeți ce sa tradus și ce a rămas în limba originală. Instrumentul nostru de testare vă va salva câteva ore de testare și vă va ajuta să vedeți ce zone trebuie să vă îmbunătățiți în tema sau pluginul dvs..

Instalați pluginurile potrivite pentru WooCommerce multilingv

Clienții dvs. vor avea nevoie de următoarele plug-in-uri pentru site-urile de comerț electronic multilingve cu WooCommerce:

  • WPML CMS de OnTheGoSystems

  • WooCommerce de WooThemes

  • WooCommerce Multilingual de OnTheGoSystems


WPML vine cu plug-in-ul și add-on-urile core. Această arhitectură permite persoanelor diferite să instaleze diferite părți de care au nevoie. Pentru site-urile WooCommerce multilingve, veți avea nevoie de următoarele componente WPML:


  • WPML (Core)

  • WPML String Traducere

  • Gestionarea traducerilor WPML

  • WPML Media Translation

Parteneriatul GoGlobal

WPML este utilizat pe peste 400.000 de site-uri Web și orice temă sau plugin care utilizează API-ul WordPress poate obține compatibilitate multilingvă utilizând WPML. De ce riscați să nu aveți o temă sau un plugin compatibil compatibil multilingv și WooCommerce?


WPML are un program GoGlobal în care oferim conturi WPML gratuite autorilor temelor și pluginurilor pentru testarea compatibilității. Avem numeroase teme compatibile în prezent, printre care mai multe WooThemes, toate temele elegante, Avada și multe teme pe ThemeForest.


La WPML luăm serios compatibilitatea cu cinci dezvoltatori de experți și consultanți care lucrează cu normă întreagă pentru compatibilitatea tuturor autorilor temelor și pluginurilor pentru a obține compatibilitate multilingvă. Înscrieți-vă gratuit astăzi la programul nostru WPML GoGlobal.

Distribuirea de teme multilingvistice

Când distribuiți tema, doriți ca utilizatorii să-l poată utiliza pentru site-urile cu limbă unică și multilingvă. Sfaturile de design pe care le-am oferit în acest articol se bazează în cea mai mare parte pe cele mai bune practici WordPress, astfel încât codul temei abia include orice cod specific pentru WPML.


Clienții dvs. vor trebui să instaleze WPML și componentele necesare pentru a rula site-uri multilingve. Deoarece WPML este marcă comercială (și din alte motive bune), nu ar trebui să legați WPML cu tema.


În schimb, WPML oferă o componentă de cumpărare mică și auto-instalare, pe care sunteți foarte bineveniți să o utilizați. Această componentă permite utilizatorilor să cumpere WPML direct din interiorul administratorului WordPress. De asemenea, vă creditează cu comisia afiliată pentru orice astfel de trimitere.


Integrarea acestei mici componente de auto-instalare în tema dvs. este o modalitate excelentă de a arăta oamenilor că tema dvs. este cu adevărat compatibilă cu WPML și poate genera site-uri multilingve. De asemenea, oferă utilizatorilor dvs. un proces raționalizat pentru achiziționarea și instalarea WPML, fără a fi nevoie să utilizeze FTP pentru al încărca pe serverele lor.

rezumat

Acum că am acoperit primele șapte cele mai bune practici de a face tema sau pluginul WooCommerce și Multilingual pregătit, sperăm că sunteți gata să începeți. A fi gata multilingv este ușor și posibil pentru fiecare autor de temă.  


Este la fel de ușor ca utilizarea celor mai bune practici din WordPress, cum ar fi utilizarea funcțiilor "gettext" și manipularea corectă a legăturilor WooCommerce, pentru a adăuga în final un fișier de configurare a limbajului la tema dvs. Creșteți versatilitatea produsului dvs. pe piață, concentrându-vă asupra internaționalizării temei sau pluginului.

Oferim $ 8.000 în ultimul nostru eveniment WPML și WooCommerce WordPress Themes Most Wanted. Trebuie să fii în ea să o câștigi!


Cod