WooCommerce erhält den Taxonomiewert des Produktattributs

Lesezeit: 1 Minute

Benutzer-Avatar
Benutzer2059376

Ich kann Post-Meta wie erwartet erfolgreich abrufen und aktualisieren, indem ich Folgendes verwende.

function update_post_type_post_prodd(  $post_id ) {

$personalization = get_post_meta( $post_id, '_qty_discount_code', true );

if ($personalization === 'R'){

$gfdata="a:28:{s:2:"id";}";
   
    $emptyRemoved = unserialize($gfdata);

    update_post_meta( $post_id,'_gravity_form_data', $emptyRemoved );
}
}
add_action( 'save_post_product', 'update_post_type_post_prodd' );

Metafeld ziehen _qty_discount_code

und ob es den Wert enthält R

Aktualisieren Sie das Metafeld _gravity_form_data mit $gfdata auf post speichern.

Jedochwenn versucht wird, eine Produktattributtaxonomie abzurufen pa_personalization Ich bekomme Grillen.

Ich habe mehrere Methoden ohne Erfolg ausprobiert. Sieht das richtig aus?

function update_post_type_post_prodd(  $post_id ) {

//$personalization = get_post_meta( $post_id, 'pa_personalization', true );

$taxonomy = 'pa_personalization';
$meta = get_post_meta($post_id, 'attribute_'.$taxonomy, true);
$term = get_term_by('slug', $meta, $taxonomy);
$personalization = $term->name;

if ($personalization === 'yes'){

$emptyRemoved = unserialize($gfdata);

    update_post_meta( $post_id,'_gravity_form_data', $emptyRemoved );
}
}
//execute the function whenever post type is being updated
add_action( 'save_post_product', 'update_post_type_post_prodd' );

add_action('save_post_product', 'update_post_type_post_prodd', 10, 3);

function update_post_type_post_prodd($post_id, $post, $update) {

    $product = wc_get_product($post_id);
    $pa_personalization = $product->get_attribute('pa_personalization');
    $attributes_values = explode(',', $pa_personalization);

    if (in_array('yes', $attributes_values)) {
        // Do stuff here
    }
}

Der Haken do_action( "save_post_{$post->post_type}", int $post_ID, WP_Post $post, bool $update ) erhält 3 Parameter.

  • Boom! Das funktionierte nur unter Vorbehalt, auf den andere achten mussten, in meinem Fall wurde zwischen Groß- und Kleinschreibung unterschieden Yes vs yes machte einen Unterschied. Vielen Dank für die Lösung.

    – Benutzer2059376

    23. April um 16:25 Uhr

1016430cookie-checkWooCommerce erhält den Taxonomiewert des Produktattributs

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy