2016-10-27 3 views
2

저는 Wordpress 3.9.14를 사용하고 있습니다.Woocommerce - 제품 페이지에서 배송비 받기

배송비는 flat_rate입니다.
기본값은 cost_per_order이며 일부 제품에는 추가 비용으로 flat_rate 안에 2 shipping_classes을 사용합니다.

제품 페이지에 배송비를 표시하고 싶습니다.
지금 ID를 얻기 위해 $product->shipping_class_id()을 사용하지만이 shipping_class_id에 대한 비용을받는 방법을 알 수 없습니다.
비용을 알고있는 경우 cost_per_order에이 값을 추가하여 제품의 총 운송 비용을 계산할 수 있습니다.

또한 cost_per_order 값을 얻는 방법을 알 수 없습니다.

전혀 해결책이 없다면 switch/case 진술을 사용하고 비용을 넣을 수 있습니다.하지만 flat_rate 비용을 변경할 때 코드를 변경해야하므로이 방법을 선호하지 않습니다. 솔루션의 종류.

+1

당신은 정말 워드 프레스의 버전을 업데이트해야합니다. 3.9.14는 매우 오래된 것입니다. –

+0

WordPress를 업데이트하는 것은 나의 할 일 목록에 있지만 지금은 할 시간이 없습니다. 그리고 저는 그들이 배송 모듈을 변경했음을 압니다. 그러나 저처럼 Wordpress 3를 사용하는 사람들은 해결책이 매우 유용 할 것이라고 생각합니다. – FamousWolluf

답변

3

나는 그것을 알아 낸 :

$shipping_class_id = $product->get_shipping_class_id(); 
$shipping_class= $product->get_shipping_class(); 
$fee = 0; 

if ($shipping_class_id) { 
    $flat_rates = get_option("woocommerce_flat_rates"); 
    $fee = $flat_rates[$shipping_class]['cost']; 
} 

$flat_rate_settings = get_option("woocommerce_flat_rate_settings"); 
echo 'Shipping cost: ' . ($flat_rate_settings['cost_per_order'] + $fee); 
+0

이 코드는 어디에 둘 수 있습니까? – kumar

+0

당신이 그것을 보여주고 싶은 곳. 당신이 개봉 된 제품 변수가 있다면 당신은 잘해야합니다. – FamousWolluf

+0

감사합니다. @FamousWolluf – kumar

관련 문제