Romanian billing fields

Plugin Banner

Romanian billing fields

by Robert G.

Download
Description

Acest plugin adaugă câmpuri de facturare în limba română la WooCommerce Checkout.

Adaugă câmpuri personalizate pentru legislația română:

PF (Persoană Fizică):
* CNP — validat cu cifra de control

PJ (Persoană Juridică):
* CIF/CUI — validat cu cifra de control (acceptă și prefixul RO)
* Număr de înregistrare la Registrul Comerțului
* Numărul contului bancar (IBAN)
* Numele băncii

La checkout utilizatorul alege mai întâi tipul de facturare (PF sau PJ), după care sunt afișate doar câmpurile relevante. Câmpurile obligatorii sunt validate atât în browser (JavaScript) cât și pe server, inclusiv algoritmic (cifra de control pentru CNP și CIF).

Câmpurile sunt afișate în adresa de facturare sub Numele companiei — pe pagina checkout, pagina de mulțumire, comenzile din admin și e-mailuri. Tipul de facturare (PF/PJ) este afișat și în adminul comenzii.

Puteți modifica aceste câmpuri ca administrator prin comenzi sau ca utilizator din pagina Contul meu Adrese.

Notă: pluginul funcționează cu checkout-ul clasic (shortcode [woocommerce_checkout]). Checkout-ul pe blocuri (Checkout block) nu este suportat momentan — incompatibilitatea este declarată explicit către WooCommerce.

Demo:
https://tastewp.com/new?pre-installed-plugin-slug=woocommerce%2Cromanian-billing-fields&redirect=plugins.php&ni=true

Consultați:
https://codex.wordpress.org/Managing_Plugins#Installing_Plugins

După instalare și activare nu este necesară nicio configurare — câmpurile apar automat în checkout.

error log

By zavex2005 on May 8, 2023

Salut,

Am observat ca am o eroare in log:

PHP Warning: Undefined array key "b_cnp" in /home/agroimpe/public_html/new/wp-content/plugins/romanian-billing-fields/grc-romanian-billing-fields.php on line 122

si se repeta si pentru celelalte campuri din plugin (cont, banca, cif, reg com, etc)

Este posibil sa remediem? Multumesc.

Un plugin de nota 10+

By ktistai on May 30, 2021

Exact ce avea nevoie si caut de foarte mult timp. Pacat ca nu mai este updatat, in continuare insa plugin-ul functioneaza foarte bine si este exact ce ai nevoie. Felicitari!

** 2.1.0 **
– Adăugat: label explicit „Nume firma” și placeholder pentru câmpul de companie (înlocuiește label-ul default WooCommerce)
– Adăugat: placeholdere pentru toate câmpurile custom (CIF, Nr.Reg.Com., Cont/IBAN, Banca, CNP)
– Fix: câmpurile CIF, Nr.Reg.Com. și Compania nu mai sunt obligatorii în afara checkout-ului — persoanele fizice își pot salva acum adresa din Contul meu Adrese fără a completa date de firmă
– Fix: câmpul Compania nu mai este obligatoriu pe adresa de livrare (required se propaga din câmpurile default și pe shipping)
– Fix: selectul „tip de facturare” își păstrează valoarea după o eroare de validare la checkout (nu se mai resetează la gol)
– Adăugat: validare algoritmică CNP (13 cifre + cifra de control) și CIF/CUI (cifra de control, cu sau fără prefixul RO) pe server
– Adăugat: tipul de facturare (PF/PJ) este afișat în adminul comenzii, lângă adresa de facturare
– Adăugat: declarată explicit incompatibilitatea cu Checkout block (cart_checkout_blocks = false) — utilizatorii nu mai rămân fără câmpuri fără avertisment
– Îmbunătățit: JS-ul de toggle este acum atașat de scriptul wc-checkout prin wp_add_inline_script și se re-aplică la updated_checkout și după re-randarea formularului
– Îmbunătățit: text domain propriu (grc-romanian-billing-fields) pentru toate stringurile — traducerile se pot încărca corect
– Îmbunătățit: wp_unslash() înainte de wc_clean() la toate citirile din $_POST, plus adnotări PHPCS pentru Plugin Check
– Îmbunătățit: hook-urile se înregistrează pe plugins_loaded cu verificare class_exists('WooCommerce') — funcționează corect și pe multisite cu WooCommerce activat la nivel de rețea
– Adăugat header Requires Plugins: woocommerce (WordPress 6.5+)

** 2.0.0 **
– Versiune majoră — refactorizare completă a codului
– Fix critic: eliminat apply_filters('woocommerce_default_address_fields') din woocommerce_admin_billing_fields care putea crea o buclă recursivă; câmpurile custom sunt acum adăugate direct în filtrul de admin
– Fix: mutat accesul la $_POST['persoana'] din woocommerce_default_address_fields (context generic) în woocommerce_checkout_fields (apelat doar la checkout), eliminând warning-uri PHP în admin și în alte contexte
– Adăugat validare server-side prin woocommerce_checkout_process — câmpul „tip de facturare” este acum verificat și pe server, nu doar în browser
– Salvare explicită a câmpurilor custom prin woocommerce_checkout_order_created folosind $order->update_meta_data() și $order->save() — compatibil complet HPOS
– Îmbunătățit JS: selectorii jQuery sunt acum cacheați în variabile, nu recreați la fiecare apel de funcție
– Adăugat case else hideAll() în JS pentru situația în care utilizatorul revine la opțiunea goală din select
– Actualizat versiune PHP minimă la 7.4 și WC minimă la 7.0.0

** 1.9.7 **
– Fix major compatibilitate WooCommerce: eliminat accesul direct la meta _billing_*
– Înlocuit get_meta() cu getters oficiali WooCommerce (get_billing_*)
– Elimină erorile is_internal_meta_key was called incorrectly
– Compatibilitate mai bună cu WooCommerce 8+ și HPOS
– Îmbunătățiri minore validare input (wc_clean)

** 1.9.6 **
– Diverse îmbunătățiri vizuale
– Suport HPOS

** 1.7.0 **
– Changed from radio buttons to select input PF/PJ

** 1.6.3 **
– Support check

** 1.6.2 **
– Support check

** 1.6.1 **
– Support check

** 1.6 **
– Support check

** 1.5 **
– Fixed admin field show

** 1.4 **
– Fixed input save

** 1.3 **
– Fixed tags

** 1.2 **
– Fixed compatibility with WooCommerce 4.*

** 1.1 **
– Fixed error of get_order

** 1.0 **
– Initial release

Back to top