Ich möchte in der Lage sein, die Variationsoptionswerte aufzulisten. Zum Beispiel habe ich eine Laterne, die in 12 Zoll, 14 Zoll und 16 Zoll erhältlich ist. Ich möchte in der Lage sein, diese Werte zu erhalten. Ich habe versucht, die foreach-Schleife zu verwenden, um diese Werte zu erhalten, aber ich brauche ein wenig Hilfe. hier ist mein Code;
function test_func(){
global $woocommerce, $product, $post;
// test if product is variable
if( $product->is_type( 'variable' ) ){
$available_variations = $product->get_available_variations();
// var_dump($available_variations);
foreach( $available_variations as $key => $value ){
var_dump( $value['attributes'] ) ;
}
}
}
Das ist die Ausgabe:
array(1) { ["attribute_pa_size"]=> string(4) "12in" } array(1) { ["attribute_pa_size"]=> string(4) "14in" } array(1) { ["attribute_pa_size"]=> string(4) "16in" }
Wie Sie sehen, sind die gewünschten Werte vorhanden, aber ich weiß nicht, wie ich sie dazu bringen kann, sie wiederzugeben.
Folgendes bekomme ich, wenn ich var_dump() $available_variations;
” [“backorders_allowed”]=> bool(falsch) [“dimensions”]=> Array(3) { [“length”]=> Zeichenkette(4) “11.8” [“width”]=> Zeichenkette(4) “11.8” [“height”]=> Zeichenkette(4) “11.8” } [“dimensions_html”]=> string(21) “11,8 x 11,8 x 11,8 Zoll” [“display_price”]=> Float(3.2) [“display_regular_price”]=> Float(3.2) [“image”]=> Array(18) { [“title”]=> Zeichenkette(11) “6712R-1.jpg” [“caption”]=> Zeichenkette(0) “” [“url”]=> Zeichenkette(59) “http://website/wp-content/uploads/2018/10/6712R-1.jpg” [“alt”]=> Zeichenkette(0) “” [“src”]=> Zeichenkette(67) “http://website/wp-content/uploads/2018/10/6712R-1-600×600.jpg” [“srcset”]=> Zeichenkette(445) “http://website/wp-content/uploads/2018/10/6712R-1-600×600.jpg 600 W, http://website/wp-content/uploads/2018/10/6712R-1-150×150.jpg 150 W, http://website/wp-content/uploads/2018/10/6712R-1-300×300.jpg 300w, http://website/wp-content/uploads/2018/10/6712R-1-768×768.jpg 768w, http://website/wp-content/uploads/2018/10/6712R-1-1024×1024.jpg 1024w, http://website/wp-content/uploads/2018/10/6712R-1-100×100.jpg 100 W” [“sizes”]=> string(31) “(max-width: 600px) 100vw, 600px” [“full_src”]=> Zeichenkette(59) “http://website/wp-content/uploads/2018/10/6712R-1.jpg” [“full_src_w”]=> int(2000) [“full_src_h”]=> int(2000) [“gallery_thumbnail_src”]=> Zeichenkette(67) “http://website/wp-content/uploads/2018/10/6712R-1-100×100.jpg” [“gallery_thumbnail_src_w”]=> int(100) [“gallery_thumbnail_src_h”]=> int(100) [“thumb_src”]=> Zeichenkette(67) “http://website/wp-content/uploads/2018/10/6712R-1-300×300.jpg” [“thumb_src_w”]=> int(300) [“thumb_src_h”]=> int(300) [“src_w”]=> int(600) [“src_h”]=> int(600) } [“image_id”]=> Zeichenkette(3) “164” [“is_downloadable”]=> bool(falsch) [“is_in_stock”]=> bool(wahr) [“is_purchasable”]=> bool(wahr) [“is_sold_individually”]=> Zeichenkette(2) “nein” [“is_virtual”]=> bool(falsch) [“max_qty”]=> int(17) [“min_qty”]=> int(1) [“price_html”]=> Zeichenkette(145) “
” [“sku”]=> Zeichenkette(5) “6712R” [“variation_description”]=> Zeichenkette(0) “” [“variation_id”]=> int(1462) [“variation_is_active”]=> bool(wahr) [“variation_is_visible”]=> bool(wahr) [“weight”]=> Zeichenkette(0) “” [“weight_html”]=> Zeichenkette(3) “N/A” } [1]=> Array(24) { [“attributes”]=> Array(1) { [“attribute_pa_size”]=> Zeichenkette(4) “14in” } [“availability_html”]=> Zeichenkette(51) ”
Dies ist nur für ein Produkt, es gibt eines für jede Variante, aber das gibt Ihnen eine Vorstellung davon, wie es funktioniert. Ich bin auch offen dafür, eine andere Methode auszuprobieren, um die gleichen Ergebnisse zu erzielen. Wenn Sie also eine kennen, lassen Sie es mich wissen. Vielen Dank