Extensia Checkout Fields Manager permite crearea de câmpuri personalizate pentru formularul de finalizare a comenzii. Acest lucru facilitează colectarea datelor de la clienți. Le puteți vedea cu ușurință pe pagina Istoric plăți, dar ce se întâmplă dacă doriți ca acestea să fie imprimate pe chitanța pentru ca clientul să le vadă? Acest document vă va ajuta în acest sens.
Exemplu de butoane radio
În acest exemplu vom folosi un câmp personalizat de tip butoane radio, intitulat „Ești mulțumit de acest proces de achiziție?”. Cheia meta pentru acest câmp a fost generată automat ca are_you_happy_with_this_purchase_process, iar noi am creat pur și simplu o opțiune de răspuns Da/Nu. Vezi mai jos.

Deoarece vom reda aceste informații pe chitanța clientului, să aruncăm o privire la șablonul respectiv. Șablonul pe care îl dorim se numește shortcode-receipt.php. Citiți documentația noastră despre cum să mutați acest șablon în tema dvs..
Aproape de începutul acelui fișier veți găsi acest cod:
$payment = get_post( $edd_receipt_args['id'] );
care creează un obiect pentru această plată. În restul acestui fișier putem găsi acum ID-ul pentru această plată sub $payment->ID.
În exemplul de mai sus, cheia meta este are_you_happy_with_this_purchase_process. Acum că avem atât ID-ul, cât și cheia meta, putem obține valoarea cu acest cod:
get_post_meta( $payment->ID, 'are_you_happy_with_this_purchase_process', true )
Notă: valoarea 'true' din exemplul de mai sus indică faptul că ne așteptăm la o singură valoare de la get_post_meta(). Checkout Fields Manager returnează o singură valoare pentru toate tipurile de câmpuri pe care le oferă.
Imprimarea pe chitanță
În exemplul de mai sus am obținut valoarea dorită, dar acum vrem să o afișăm frumos pe chitanțe. În shortcode-receipt.php veți găsi un tabel HTML cu un ID CSS de edd_purchase_receipt. Puteți copia acest tabel și modifica valorile. Iată un exemplu de antet de tabel:
Then we can print a table row for the above question, like this:
Multi-answer Example
Some field types allow for multiple answers from a customer. Check boxes allow the customer to select multiple things for example. This is still stored as a single item in meta data; it’s a single array with multiple key/value pairs. How it gets rendered is slightly different from above, however.
Here’s a custom field asking the customer what their favorite animal is:
Rendering it in our HTML table would look like this:
ID, 'favorite_animal', true ) as $animal ) { $animals .= '
As you can see it’s only slightly more complicated than the first example.
Wrapping Up
Putting together the two code samples from above, we end up with something like this:
| ID ), 'are_you_happy_with_this_purchase_process', true ) ) ); ?> | |
| ID ), 'are_you_happy_with_this_purchase_process', true ) ) ); ?> | |
Ceea ce va arăta astfel: 
Puncte Cheie
- Pentru a afișa răspunsurile din Câmpuri personalizate pe chitanțele dvs., copiați fișierul shortcode-receipt.php în tema dvs. și puneți codul acolo
- Obținerea datelor se face pur și simplu printr-un apel get_post_meta() pe cheia meta furnizată în zona de administrare
- Toate cheile din Custom Fields Manager sunt stocate ca valori unice în tabelul post_meta.
Notă: Easy Digital Downloads nu oferă suport pentru codificare/dezvoltare personalizată. Dacă este necesar, recomandăm angajarea unui dezvoltator prin Codeable pentru a efectua modificările personalizate de care aveți nevoie.

