În România, produsele electrocasnice și echipamentele electrice sunt supuse unei taxe verzi, destinată gestionării deșeurilor rezultate din aceste produse. Dacă ai un magazin WooCommerce și vrei să afișezi această taxă pe pagina produsului, acest tutorial îți va arăta cum să adaugi un câmp personalizat în panoul de administrare, să salvezi valoarea taxei și să o afișezi vizibil pe pagina produsului.
✅ Ce face acest cod?
✔ Adaugă un câmp în admin pentru a seta taxa verde individual pe fiecare produs.
✔ Salvează valoarea taxei în baza de date WooCommerce.
✔ Afișează taxa verde pe pagina produsului pentru transparență față de clienți.
✔ Poate fi modificată oricând direct din panoul de administrare WooCommerce.
🔧 1. Adăugarea câmpului „Taxă verde” în admin
Mai întâi, trebuie să permitem administratorului să seteze taxa verde direct din panoul de administrare al produsului. Pentru aceasta, adăugăm un câmp personalizat în secțiunea de setări generale a produsului.
add_action('woocommerce_product_options_general_product_data', function() {
woocommerce_wp_text_input([
'id' => '_taxa_verde',
'label' => 'Taxă verde (RON)',
'description' => 'Setează taxa verde pentru acest produs.',
'type' => 'number',
'custom_attributes' => ['step' => '0.01', 'min' => '0']
]);
});
🔹 Explicație: Acest cod adaugă un câmp numeric unde administratorul poate introduce taxa verde aplicabilă produsului.
💾 2. Salvarea taxei verzi în baza de date
După ce câmpul este adăugat, trebuie să ne asigurăm că valoarea introdusă de administrator este salvată corect.
add_action('woocommerce_process_product_meta', function($post_id) {
if (isset($_POST['_taxa_verde'])) {
update_post_meta($post_id, '_taxa_verde', sanitize_text_field($_POST['_taxa_verde']));
}
});
🔹 Explicație: Acest cod preia valoarea introdusă și o salvează în baza de date WooCommerce folosind update_post_meta()
.
🖥️ 3. Afișarea taxei verzi pe pagina produsului
Pentru transparență, taxa verde trebuie să fie vizibilă pe pagina produsului.
add_action('woocommerce_single_product_summary', function() {
global $product;
$taxa_verde = get_post_meta($product->get_id(), '_taxa_verde', true);
if (!empty($taxa_verde) && $taxa_verde > 0) {
echo '<p style="color: #28a745; font-weight: bold;"> ♻️ Taxă verde inclusă: ' . esc_html($taxa_verde) . ' RON</p>';
}
}, 25);
🔹 Explicație:
- Recuperăm valoarea taxei verzi din baza de date.
- Verificăm dacă are o valoare validă (mai mare ca 0).
- Afișăm taxa verde pe pagina produsului, într-un stil vizibil.
🎯 Rezultatul final
După implementarea acestui cod:
✅ Administratorul va putea introduce taxa verde pentru fiecare produs electric sau electrocasnic.
✅ Valoarea va fi salvată automat în WooCommerce.
✅ Clienții vor vedea taxa verde direct pe pagina produsului.
📌 Dacă vrei să afișezi și în coș sau la finalizarea comenzii, anunță-mă și îți dau codul necesar!