Personalizarea afișării comenzilor și includerea câmpurilor personalizate în WooCommerce

YouTube Logo Urmărește canalul nostru de YouTube

Acest articol explică cum să personalizezi lista de comenzi în backend-ul WooCommerce pentru a evidenția comenzile plasate de persoane juridice și cum să adaugi câmpuri personalizate în emailurile de comandă.

Ce face acest cod?

  1. Schimbă culoarea de fundal pentru comenzile plasate de persoane juridice în lista de comenzi din backend
    • Dacă o comandă conține informații despre o companie (numele companiei sau codul fiscal), aceasta este evidențiată cu o culoare galben deschis.
  2. Adaugă câmpuri personalizate în emailurile de comandă
    • Include detalii despre companie și codul fiscal (dacă există) în emailurile trimise către client sau administrator.

Codul complet

Adaugă acest cod în fișierul functions.php al temei active sau într-un plugin personalizat:

// Adaugă stiluri personalizate pentru comenzile plasate de persoane juridice în lista de comenzi
add_action('admin_head', 'custom_order_list_styles');

function custom_order_list_styles() {
    echo '<style>
        .status-company-completed {
            background-color: #fcff8e !important; /* galben deschis */
        }
    </style>';
}

// Adaugă o clasă personalizată comenzilor care au câmpurile companie completate
add_filter('post_class', 'add_custom_order_class', 10, 3);

function add_custom_order_class($classes, $class, $post_id) {
    if ('shop_order' === get_post_type($post_id)) {
        // Verifică dacă câmpul billing_company sau billing_wooccm11sa este completat
        $billing_company = get_post_meta($post_id, '_billing_company', true);
        $billing_wooccm11sa = get_post_meta($post_id, '_billing_wooccm11sa', true);
        
        if (!empty($billing_company) || !empty($billing_wooccm11sa)) {
            $classes[] = 'status-company-completed';
        }
    }
    return $classes;
}

// Adaugă câmpuri personalizate în emailurile de comandă
add_action('woocommerce_email_order_meta', 'add_custom_fields_to_order_email', 20, 4);

function add_custom_fields_to_order_email($order, $sent_to_admin, $plain_text, $email) {
    $order_id = $order->get_id();
    $billing_company = get_post_meta($order_id, '_billing_company', true);
    $billing_wooccm11sa = get_post_meta($order_id, '_billing_wooccm11sa', true);
    
    if (!empty($billing_company) || !empty($billing_wooccm11sa)) {
        echo '<h3>Informații Comandă pe Persoană Juridică</h3>';
        if (!empty($billing_company)) {
            echo '<p><strong>Companie:</strong> ' . esc_html($billing_company) . '</p>';
        }
        if (!empty($billing_wooccm11sa)) {
            echo '<p><strong>Cod Fiscal:</strong> ' . esc_html($billing_wooccm11sa) . '</p>';
        }
    }
}

Explicația codului

1. Personalizarea listei de comenzi

  • add_action('admin_head', 'custom_order_list_styles')
    • Adaugă un bloc CSS în secțiunea <head> a paginii de administrare.
    • Evidențiază comenzile care conțin informații despre companie cu o culoare galben deschis.
  • add_filter('post_class', 'add_custom_order_class', 10, 3)
    • Verifică dacă o comandă are completate câmpurile _billing_company sau _billing_wooccm11sa.
    • Dacă cel puțin unul dintre aceste câmpuri este completat, comanda primește clasa status-company-completed, care aplică stilul definit anterior.

2. Adăugarea câmpurilor personalizate în email

  • add_action('woocommerce_email_order_meta', 'add_custom_fields_to_order_email', 20, 4)
    • Verifică existența câmpurilor _billing_company și _billing_wooccm11sa.
    • Dacă există date, acestea sunt afișate în secțiunea de metadate a emailului.

Avantaje

  • Vizibilitate crescută: Comenzile plasate de persoane juridice sunt evidențiate, ceea ce facilitează identificarea rapidă a acestora în backend.
  • Comunicare eficientă: Informațiile importante despre companie sunt incluse automat în emailurile de comandă, eliminând necesitatea verificărilor manuale.
  • Personalizare simplă: Codul este ușor de modificat pentru a include alte câmpuri sau pentru a schimba stilurile.

Rezultat

  • În lista de comenzi din backend-ul WooCommerce, comenzile plasate de persoane juridice vor fi evidențiate cu un fundal galben deschis.
  • Emailurile de comandă vor include detalii despre companie și codul fiscal, dacă acestea sunt completate.

Concluzie

Acest cod oferă o soluție simplă și eficientă pentru gestionarea comenzilor plasate de persoane juridice în WooCommerce, îmbunătățind organizarea și comunicarea cu clienții.

 

× YouTube Logo

🔔 Abonează-te la canalul nostru!

Primește cele mai noi tutoriale WordPress direct pe YouTube!

×