Sari la conținut
WEBLURE

WooCommerce · B2B și comenzi repetate

WooCommerce: comandă rapidă prin introducerea codurilor SKU

Un distribuitor cu 40 de coduri nu vrea să caute fiecare produs. Un formular SKU + cantitate le adaugă în coș dintr-o singură mișcare.

  • SKU + cantitate
  • Adăugare în coș
  • Validare și erori pe rând
  • Stoc și variante
  • Doar pentru conturi B2B

Răspuns în aceeași zi lucrătoare Ofertă fixă Fără parole

Vrei să ți-o facem noi?

Doar două câmpuri. Răspundem în aceeași zi lucrătoare, cu ofertă fixă.

+ Telefon și detalii (opțional)

Răspuns rapid

Pagina „B2B for WooCommerce” nu menționează comandă rapidă după SKU; în nucleu nu există nici ea. Se poate construi: un formular cu rânduri SKU + cantitate, un handler care caută produsul după SKU (wc_get_product_id_by_sku) și îl adaugă în coș (WC()->cart->add_to_cart), cu raport de erori pe rând (SKU inexistent, fără stoc, variantă necunoscută). Păstrează formularul în spatele autentificării și acoperă produsele variabile separat.

Ce ai nevoie

  • SKU-uri unice și stabile
  • Cine are acces la formular
  • Reguli de stoc și variante
  • Acces la tema copil

Pașii, pe rând

  1. 1Alege unde stă formularulO pagină „Comandă rapidă” disponibilă doar clienților B2B, legată din meniu și din contul client.
  2. 2Definește formatulRânduri cu SKU și cantitate, adăugate dinamic sau lipite dintr-o listă (SKU;cantitate). Acceptă și copiere din Excel.
  3. 3Caută produsul după SKUwc_get_product_id_by_sku întoarce ID-ul produsului sau al variantei cu acel SKU; dacă e gol, rândul e eronat.
  4. 4Adaugă în coș cu validareFolosești WC()->cart->add_to_cart pentru fiecare rând valid și verifici stocul și cantitatea; respectă regulile de minim și maxim.
  5. 5Raportează erorile pe rândDupă procesare, arată un tabel: adăugat, SKU necunoscut, fără stoc, cantitate invalidă. Clientul corectează doar rândurile cu probleme.
  6. 6Tratează varianteleUn SKU de variantă se adaugă cu ID-ul părintelui și al variantei; testează produsele variabile separat.
  7. 7Testează cu liste mari50–200 de rânduri: timp de procesare, limitele serverului și comportamentul pe telefon.

Adăugare în coș după SKU (schelet)

php
function adauga_dupa_sku(array $randuri): array {
    $rezultat = [];
    foreach ($randuri as [$sku, $cant]) {
        $id = wc_get_product_id_by_sku(trim($sku));
        if (!$id) { $rezultat[] = [$sku, 'SKU necunoscut']; continue; }
        $produs = wc_get_product($id);
        if (!$produs || !$produs->is_purchasable() || !$produs->is_in_stock()) {
            $rezultat[] = [$sku, 'indisponibil']; continue;
        }
        $parent = $produs->get_parent_id();
        $ok = $parent
            ? WC()->cart->add_to_cart($parent, (int) $cant, $id)
            : WC()->cart->add_to_cart($id, (int) $cant);
        $rezultat[] = [$sku, $ok ? 'adăugat' : 'eroare'];
    }
    return $rezultat;
}

Fragmentele de cod sunt scheleturi: le adaptezi la magazinul tău și le testezi întâi pe un mediu de test (staging). Funcția întoarce un raport pe rând. Adaugă nonce, verificare de rol și limitare a numărului de rânduri înainte de a o expune într-un formular.

Nu am găsit comandă rapidă după SKU în paginile oficiale ale extensiilor B2B consultate (pagina B2B for WooCommerce menționează import CSV doar pentru prețuri). Fragmentul este o soluție proprie.

Nu vrei să te complici sau ai rămas blocat? Scrie-ne și o facem noi.

Scrie-ne pe WhatsAppCere ofertă

Mai multe detalii

Cauze frecvente și greșeli de evitatDacă pașii de mai sus nu au rezolvat problema
1

SKU-ul nu e găsit

De ce: SKU diferit, spații sau produs nepublicat.

Ce faci: Normalizează SKU-ul și verifică produsul.

2

Variantele nu se adaugă

De ce: Se folosește ID-ul variantei ca produs.

Ce faci: Folosește ID-ul părintelui și al variantei.

3

Timeout la liste mari

De ce: Prea multe rânduri într-o cerere.

Ce faci: Procesează în loturi.

Întrebări frecvente4 răspunsuri
Are WooCommerce comandă rapidă după SKU?

Nu în nucleu; se construiește cu cod sau cu o extensie dedicată.

Merge cu produse variabile?

Da, dacă SKU-ul este al variantei și adaugi părintele cu ID-ul variantei.

Pot lipi din Excel?

Da, dacă formularul parsează rânduri SKU;cantitate.

Mă ajutați să-l construim?

Da. Cere ofertă fixă.