最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

How to get selected variation for a product in WooCommerce Cart Page?

programmeradmin1浏览0评论

I'm doing an eCommerce where you can select a product with a selected variation attribute. In the variation, you will choose the day (Monday, Tuesday, etc) when you want to receive it (not the date, only day).

My issue is that I need to show in Cart page the products separated by day, like this.

Monday

Product 1 Product 2

Tuesday

Product 1 Product 3 Product 2

To do this I need to identify the value of the attribute of the product when I added in the cart.

In cart.php I add different codes to get the attributes, for all I can get the attribute name and id, but the value is always empty.

if($product->is_type('variation')){
            $variation_attributes = $product->get_variation_attributes();
            foreach($variation_attributes as $attribute_taxonomy => $term_slug){
        $taxonomy = str_replace('attribute_', '', $attribute_taxonomy );
                // The name of the attribute
                $attribute_name = get_taxonomy( $taxonomy )->labels->singular_name;
                // The term name (or value) for this attribute
                $attribute_value = get_term_by( 'slug', term_slug, $taxonomy )->name;
                printf ('<br>Detalles de Variaciones: %s, Value %s',$attribute_name,$attribute_value);
            }
            $variation_detail = woocommerce_get_formatted_variation( $variation_attributes, true );
            // printf ('<br>Detalles de Variaciones: %s',$variation_detail);
            $attributes = get_post_meta( $product->get_parent_id(), '_product_attributes', true );
            foreach ( $attributes as $attribute ) {
                echo '<br>Variable: '. $attribute['name'] . '<br> Value: '. $attribute['value'];
            }

            foreach( $cart_item['variation'] as $attribute_val ){
               printf('<br>Lista de Variaciones: %s', $sttribute_val);
            }           

        }

As I mentioned, I get the attributes name, but the value is empy, I think that I'm not sending the attribute value, How can I confirm that the value is sent to the cart?

发布评论

评论列表(0)

  1. 暂无评论