답변:
업데이트로 변경 사항을 덮어 쓸 수 있으므로 코어 및 플러그인 파일을 직접 편집해서는 안됩니다. get_price_html
메소드 에서 WooCommerce 소스를 보면 함수의 출력을 수정하는 데 사용할 수 있는 많은 필터가 있습니다.
호출에 add_filter
필터를 추가하는 방법에 대한 자세한 내용 은 코덱을 참조하십시오 apply_filters
.
에서 get_price_html
의 class-wc-product
:
return apply_filters('woocommerce_get_price_html', $price, $this);
따라서 자신의 필터를 추가하려면 다음을 수행하십시오.
add_filter( 'woocommerce_get_price_html', 'wpa83367_price_html', 100, 2 );
function wpa83367_price_html( $price, $product ){
return 'Was:' . str_replace( '<ins>', ' Now:<ins>', $price );
}
<del>£2</del><ins>£1</ins>
로 어떻게 바꿀 수 Was:<del>£2</del> Now:<ins>£1</ins>
있습니까?
woocommerce_get_price_html
대한 기본 필터 에서 무슨 일이 일어나고 있는지 알고 싶습니다 $price
. 대신 무료로 제품 내 사이트, woocommerce 쇼 0 $Free!
function wpa83368_price_html( $price,$product ){
// return $product->price;
if ( $product->price > 0 ) {
if ( $product->price && isset( $product->regular_price ) ) {
$from = $product->regular_price;
$to = $product->price;
return '<div class="old-colt"><del>'. ( ( is_numeric( $from ) ) ? woocommerce_price( $from ) : $from ) .' Retail </del> | </div><div class="live-colst">'.( ( is_numeric( $to ) ) ? woocommerce_price( $to ) : $to ) .'Our Price</div>';
} else {
$to = $product->price;
return '<div class="live-colst">' . ( ( is_numeric( $to ) ) ? woocommerce_price( $to ) : $to ) . 'Our Price</div>';
}
} else {
return '<div class="live-colst">0 Our Price</div>';
}
}