/** * Implements hook_preprocess_commerce_checkout_form(). */ function bootstrap_barrio_subtheme_preprocess_commerce_checkout_form(&$variables) { $form = &$variables['form']; $custom_fields = []; // 주문 엔터티 추출 시도 $order = NULL; $possible_keys = ['#order', 'order', '#entity', 'checkout']; foreach ($possible_keys as $key) { if (!empty($form[$key]) && $form[$key] instanceof \Drupal\commerce_order\Entity\OrderInterface) { $order = $form[$key]; \Drupal::logger('mytheme')->debug('Order found with key: @key', ['@key' => $key]); break; } } // 대체 방법: 현재 체크아웃 단계에서 주문 엔터티 로드 if (!$order) { $checkout_flow = \Drupal::routeMatch()->getParameter('commerce_checkout_flow'); if ($checkout_flow) { $order = \Drupal::routeMatch()->getParameter('commerce_order'); \Drupal::logger('mytheme')->debug('Order loaded from route: @order_id', ['@order_id' => $order ? $order->id() : 'none']); } } if ($order && $order instanceof \Drupal\commerce_order\Entity\OrderInterface) { foreach ($order->getItems() as $order_item) { $variation = $order_item->getPurchasedEntity(); $product = $variation ? $variation->getProduct() : NULL; if ($product) { $footer_block_value = $product->hasField('field_footer_block') && !$product->field_footer_block->isEmpty() ? $product->field_footer_block->value : 'N/A'; $custom_fields[] = [ 'footer_block' => $footer_block_value, ]; \Drupal::logger('mytheme')->debug('Field footer_block value: @value for product: @product_id', [ '@value' => $footer_block_value, '@product_id' => $product->id(), ]); } else { \Drupal::logger('mytheme')->debug('No product found for order item: @id', ['@id' => $order_item->id()]); } } } else { $custom_fields[] = ['footer_block' => '주문 엔터티를 찾을 수 없습니다.']; \Drupal::logger('mytheme')->debug('No order entity found. Form keys: @keys', ['@keys' => implode(', ', array_keys($form))]); } $variables['custom_fields'] = $custom_fields; $variables['form_keys'] = array_keys($form); } function bootstrap_barrio_subtheme_preprocess_commerce_checkout_order_summary(&$variables) { /** @var \Drupal\commerce_order\Entity\OrderInterface $order */ $order = $variables['order_entity']; $result = []; foreach ($order->getItems() as $item) { $variation = $item->getPurchasedEntity(); // 커스텀 필드값 가져오기 (배열 형태). $values = $variation->get('field_my_field')->getValue(); // 예: 각 라인아이템 별로 값 저장. $result[$item->id()] = $values; } $variables['my_custom_fields'] = $result; } 발 달린 장바구니, 바쁘다 바빠! | 시민정치마당 주요 콘텐츠로 건너뛰기
사이드바

발 달린 장바구니, 바쁘다 바빠!

금, 2016/10/28- 18:10익명 (미확인) 에 의해 제출됨
관련 개인/그룹
지역
태평매장 배달시범 서비스, 1개월 이용 조합원 100명ㆍ건수 200건 돌파 일 이용 8.9건, 일 평균 79만원, 객단가 88,500원 등 호조 태평매장 배달시범 서비스가 서비스 개시 32일 만에 배송건수 206건 총 이용금액 1700만원을 넘어섰다. 추석이라는 호재를 감안하더라도 놀라운 수치다. 1개월 이용 조합원 100명, 이용건수 200건, 일 평균 8.9건, 일 평균 79만원, 객단가 88,500원 등 매장 이용 객단가가 3만원을 넘지 못하는 상황에서 유의미한 결과를 보이고 있다. 이는 매출 부진으로 고전하고 있는 태평매장에 가뭄의 단비와 같이 작용하고 있다. 배달시범 서비스 개시를 기점으로 이용조합원 수가 늘어나는 추세다. 특히, 전년도 같은 조건 하.......

댓글 달기

CAPTCHA
스펨 사용자 차단 질문