Woocommerce adaugă atribut unui produs simplu programatic

6 iun. 2018, 21:58:10
Vizualizări: 18K
Voturi: 6

Vreau să creez o funcție care să adauge un atribut anumitor produse în mod programatic. Folosesc codul de mai jos, dar nu pare să funcționeze.

 $attributedata = Array(
     'pa_color'=>Array( 
           'name'=>'pa_color', 
           'value'=>'black',
           'is_visible' => '1',
           'is_taxonomy' => '1'
     )
);

    update_post_meta( $productID,'_product_attributes',$attributedata );

Dacă setez taxonomia la 0, atributul este adăugat produsului, dar nu apare în frontend decât dacă apăs manual update pentru fiecare produs. Ce pot face pentru a adăuga atribute la produs? Menționez că produsele sunt simple, nu variabile.

0
Toate răspunsurile la întrebare 1
2
10
// Setează termenul 'negru' pentru atributul de culoare al produsului
wp_set_object_terms( $productID, 'negru', 'pa_color', true );

// Definește array-ul cu atributele de culoare
$att_color = Array('pa_color' =>Array(
       'name'=>'pa_color',
       'value'=>'negru',
       'is_visible' => '1',  // Atribut vizibil
       'is_taxonomy' => '1'  // Este taxonomie
     ));

// Actualizează metadatele produsului cu noile atribute
update_post_meta( $productID, '_product_attributes', $att_color);
3 apr. 2019 16:39:33
Comentarii

funcționează pentru mine, poți încerca și tu

vikas Rana vikas Rana
3 apr. 2019 16:40:46

Te rog [editează] răspunsul tău și adaugă o explicație: de ce ar putea rezolva problema?

fuxia fuxia
3 apr. 2019 17:40:40