WooCommerce · Coș de cumpărături
WooCommerce: crearea unui link care adaugă un set de produse în coș
Vrei un link de campanie care pune în coș un kit de produse. WooCommerce adaugă un singur produs prin URL; pentru un set faci un endpoint propriu.
- Link de campanie
- Set de produse
- Redirect la coș sau checkout
- Validare și stoc
- Mesaj clar
Răspuns în aceeași zi lucrătoare Ofertă fixă Fără parole
Răspuns rapid
Pentru un singur produs, WooCommerce acceptă un link cu parametrul add-to-cart. Pentru un set de produse faci un endpoint propriu: un parametru (de exemplu ?kit=starter) pe care îl citești în hook-ul template_redirect, adaugi fiecare produs cu WC()->cart->add_to_cart(), tratezi stocul și erorile și redirecționezi clientul la coș sau la checkout. Documentația nu descrie nativ adăugarea mai multor produse dintr-un link, de aceea trebuie să-l construiești tu.
Ce ai nevoie
- Lista produselor și cantităților din set
- Acces la tema copil
- Pagina de destinație (coș sau checkout)
- Un mediu de test
Pașii, pe rând
- 1Definește setulCe produse și ce cantități intră în set, cu variantele fixate unde e cazul. Ține evidența în cod, într-un tabel simplu.
- 2Alege parametrul linkuluiDe exemplu ?kit=starter. Un nume clar și validare strictă (doar valorile din tabel).
- 3Adaugă produsele în coșÎn hook-ul template_redirect citești parametrul, parcurgi setul și apelezi WC()->cart->add_to_cart() pentru fiecare produs. Verifică stocul și rezultatul fiecărui apel.
- 4Evită adăugările dubleDacă clientul reîncarcă linkul, nu vrei să dublezi setul. Folosește un indicator în sesiune sau golește produsele din set înainte de adăugare.
- 5RedirecționeazăDupă adăugare, trimite clientul la coș sau la checkout și afișează un mesaj. Folosește wp_safe_redirect().
- 6Tratează erorileDacă un produs e epuizat sau indisponibil, adaugă-l pe celelalte și spune clientului ce lipsește, sau oprește tot setul, după regula ta.
- 7TesteazăLink valid, link invalid, reîncărcare, produse epuizate, client autentificat și vizitator. Verifică totalurile.
Link care adaugă un kit în coș (schelet)
phpadd_action('template_redirect', function () {
if (empty($_GET['kit'])) {
return;
}
$kituri = [
'starter' => [101 => 1, 102 => 2], // id produs => cantitate
];
$kit = sanitize_key(wp_unslash($_GET['kit']));
if (!isset($kituri[$kit]) || !function_exists('WC') || !WC()->cart) {
return;
}
foreach ($kituri[$kit] as $product_id => $qty) {
$ok = WC()->cart->add_to_cart($product_id, $qty);
if (!$ok) {
wc_add_notice('Un produs din set nu a putut fi adăugat.', 'error');
}
}
wp_safe_redirect(wc_get_cart_url());
exit;
});Fragmentele de cod sunt scheleturi: le adaptezi la magazinul tău și le testezi întâi pe un mediu de test (staging). Exemplul nu previne dubla adăugare la reîncărcare; adaugă un indicator în sesiune dacă ai nevoie. Pentru produse cu variante, treci și ID-ul variantei.
Mai multe detalii
Cauze frecvente și greșeli de evitatDacă pașii de mai sus nu au rezolvat problema
Produsele se dublează la reîncărcare
De ce: Linkul se execută din nou.
Ce faci: Marchează în sesiune setul adăugat sau curăță înainte de adăugare.
Un produs din set nu se adaugă
De ce: Stoc epuizat, preț lipsă sau variantă neselectată.
Ce faci: Verifică produsele din set și tratează erorile.
Linkul nu face nimic
De ce: Hook-ul nu rulează sau parametrul nu e în tabel.
Ce faci: Verifică numele parametrului și că funcția e încărcată.
Întrebări frecvente4 răspunsuri
WooCommerce adaugă mai multe produse dintr-un link?
Documentația consultată nu descrie asta nativ; se face cu un endpoint propriu, ca în exemplu.
Pot trimite clientul direct la checkout?
Da, redirecționând la wc_get_checkout_url() în loc de coș.
Funcționează în emailuri și pe WhatsApp?
Da, linkul se poate folosi oriunde; testează-l pe mobil.
Vă ocupați de implementare?
Da, cu seturile tale și cu teste. Cere ofertă fixă.
Subiecte acoperite pe această pagină
- link adaugă produse în coș WooCommerce
- kit de produse link
- add to cart link WooCommerce
- set de produse în coș
- link campanie coș
Ghiduri apropiate
- WooCommerce: produsele nu se adaugă în coș
- WooCommerce: coșul se golește la navigarea între pagini
- WooCommerce: cantitatea din coș nu se actualizează
- WooCommerce: prețul din coș diferă de prețul produsului
- WooCommerce: configurarea unei valori minime a comenzii
- WooCommerce: limitarea cantității cumpărate pentru un produs
- WooCommerce: păstrarea coșului între dispozitive
- Toate ghidurile
Surse și verificare
- Setări produse, comportamentul „Add to cart” (documentație WooCommerce)
- Codul sursă WooCommerce: coș (class-wc-cart.php)
Verificat pe 5 noiembrie 2026. Denumirile din setări și pașii pot diferi între versiuni.
