Попытка изменить страницу с информацией о заказе в Woocommerce - PullRequest
0 голосов
/ 22 сентября 2018

Я работаю на сайте ресторана, используя Woocommerce.Попытка отобразить связанные продукты в модальном режиме.Таким образом, у меня есть родительские продукты и связанные продукты (ребенок).Когда пользователь нажимает на значок корзины для родительских продуктов, тогда связанные / дочерние продукты появляются в модальном режиме.Затем пользователь может выбрать несколько продуктов оттуда и добавить в корзину.Это работает почти идеально.Но я хочу отобразить дочерние продукты под соответствующим родительским продуктом на странице сведений о заказе (в админке) и в электронной почте (счет-фактура).В настоящее время детские товары появляются дважды.В качестве родительских продуктов и снова под родительским.Как видите, продукты с зеленой маркировкой - детские.Я не хочу, чтобы они снова отображались красным цветом.

Вот внешний интерфейс: https://technovicinity.com/development/wordpress/mahmodul/bbeatery/our-menu/

Спасибо всем экспертам.

введите изображениеописание здесь

вот код:

<div style="padding-left: 12px;width: 125%;padding-top: 20px;">
			<?php
			global $wpdb, $woocommerce;
			
			 $product_id =  $item->get_product_id(); 
            if($product_id ){ 
            $product = new WC_Product($product_id);
            $upsells = $product->get_upsell_ids();
            if(!empty( $upsells )){
            
            $args = array(
            'post_type' => 'product',
            'ignore_sticky_posts' => 1,
            'no_found_rows' => 1,
            'posts_per_page' => 30,
            'orderby' => 'name',
            'post__in' => $upsells,
            'post__not_in' => array($item_id), 
            );
            
            $product_upsells = new WP_Query($args);
            
            if ($product_upsells->have_posts()) :  
            $i=1;
            while ( $product_upsells->have_posts() ) : $product_upsells->the_post();   

            
			
		
             $child_name = get_the_title();
			$results = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}woocommerce_order_items WHERE  order_item_name ='$child_name' AND order_id = '$order->id'", OBJECT );
			
			 
			foreach($results as $row){
			    $order_product_name = $row->order_item_name;  
			  
			  if($child_name == $order_product_name){ ?>
            
             <li>
			<?php
                 //print_r($post->ID);		
                $child_name = get_the_title(); 
                $_product = wc_get_product( $post->ID );
                $Price = $_product->get_price(); 			
                $currency_number = get_woocommerce_currency_symbol(); 
                echo $child_name;
			  ?>
             <span style="float:right;">			 
			 <?php  echo $currency_number.$Price. '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;    X    &nbsp;&nbsp;&nbsp;1';   ?> 
             <span style="float:right">
			 <?php $total_order =  $Price * 1;   $total_order; ?>             
             </span> 
              <span style="float:right; padding-left:46px;">
			 <?php echo $currency_number.''.$total_order; ?>             
             </span>
             
             </li>
            
            <?php			
			/*echo "<br>";
			echo $post->ID;
			echo "<br>"; */ 
			?>
 
            <?php
			  }
			}
			 
            $i++;
            endwhile;
            endif; 
            
            wp_reset_postdata(); 
            
            } 
		   }
            ?>   
            </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...