Aggiungere attributi a prodotti semplici in WooCommerce programmaticamente

6 giu 2018, 21:58:10
Visualizzazioni: 18K
Voti: 6

Voglio creare una funzione che aggiunga attributi a specifici prodotti in modo programmatico. Uso il codice qui sotto ma non sembra funzionare.

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

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

Se imposto la tassonomia a 0 l'attributo viene passato al prodotto ma non appare nel frontend a meno che non prema manualmente aggiorna per ogni prodotto. Cosa posso fare per aggiungere attributi al prodotto? Vorrei specificare che i prodotti sono prodotti semplici non variabili.

0
Tutte le risposte alla domanda 1
2
10
// Imposta il termine 'nero' per l'attributo 'colore' del prodotto
wp_set_object_terms( $productID, 'black', 'pa_color', true );

// Crea un array con i dati dell'attributo colore
$att_color = Array('pa_color' =>Array(
       'name'=>'pa_color',                // Nome della tassonomia
       'value'=>'black',                  // Valore dell'attributo
       'is_visible' => '1',               // Visibile nel frontend
       'is_taxonomy' => '1'               // È una tassonomia
     ));

// Aggiorna i metadati del prodotto con le informazioni sull'attributo
update_post_meta( $productID, '_product_attributes', $att_color);
3 apr 2019 16:39:33
Commenti

funziona per me, puoi provarlo

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

Per favore [modifica] la tua risposta e aggiungi una spiegazione: perché questa soluzione potrebbe risolvere il problema?

fuxia fuxia
3 apr 2019 17:40:40