WooCommerce 관리 주문 개요에 주문 메타데이터 추가
저는 WooCommerce용 플러그인을 개발 중입니다.admin의 주문 상세 템플릿을 덮어쓰고 싶습니다.https://www.skyverge.com/blog/override-woocommerce-template-file-within-a-plugin/에서 에 대해 읽었는데, admin의 주문 상세 템플릿을 덮어쓰는 방법을 아직 모르겠습니다.다음은 내 코드입니다.
if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
if ( ! class_exists( 'Test' ) ) {
load_plugin_textdomain( 'test', false, dirname( plugin_basename( __FILE__ ) ) . '/' );
}
}
class Test {
public function __construct() {
add_action( 'init', array( $this, 'include_template_functions' ), 20 );
add_action( 'woocommerce_init', array( $this, 'woocommerce_loaded' ) );
add_action( 'plugins_loaded', array( $this, 'plugins_loaded' ) );
do_action( 'woocommerce_admin_order_data_after_order_details', 'hello' );
}
public function hello() {
echo "order detail template has loaded";
}
public function include_template_functions() {
include( 'woocommerce-template.php' );
echo "template has loaded";
}
public function woocommerce_loaded() {
}
public function plugins_loaded() {
}
}
$GLOBALS['wc_acme'] = new Test();
훅을 호출하는 것이 아닙니다.woocommerce_admin_order_data_after_order_details
.
플러그인을 통한 주문 상세 템플릿 편집의 예를 제안하거나 공유해 주실 수 있습니까?관리자가 목록에서 주문 세부 정보를 볼 수 있는 관리자 내부의 주문 세부 정보 템플릿을 참조하는 것입니다.
WooCommerce 체크아웃 필드 커스터마이즈 튜토리얼에서 주문 상세 메타박스에 추가 주문 메타 데이터를 표시하는 방법은 다음과 같습니다.
// display the extra data in the order admin panel
function kia_display_order_data_in_admin( $order ){ ?>
<div class="order_data_column">
<h4><?php _e( 'Extra Details' ); ?></h4>
<?php
echo '<p><strong>' . __( 'Some field' ) . ':</strong>' . get_post_meta( $order->id, '_some_field', true ) . '</p>';
echo '<p><strong>' . __( 'Another field' ) . ':</strong>' . get_post_meta( $order->id, '_another_field', true ) . '</p>'; ?>
</div>
<?php }
add_action( 'woocommerce_admin_order_data_after_order_details', 'kia_display_order_data_in_admin' );
이는 체크아웃 시 데이터를 수집하고 데이터를 포스트 메타로 저장한 것을 전제로 합니다.$order
문제가 되고 있습니다.
사용할 수 있습니다.woocommerce_admin_order_data_after_billing_address
액션:
function order_phone_backend($order){
echo "<p><strong>Billing phone 2:</strong> " . get_post_meta( $order->id, '_billing_phone_new', true ) . "</p><br>";
}
add_action( 'woocommerce_admin_order_data_after_billing_address','order_phone_backend', 10, 1 );
언급URL : https://stackoverflow.com/questions/29602269/add-order-metadata-to-woocommerce-admin-order-overview
'programing' 카테고리의 다른 글
Cordova 5.0 + cordova-android@4.0으로 업그레이드한 후 Ajax 요청이 실패함 (0) | 2023.02.26 |
---|---|
modemjs를 사용하여 각도 재료에서 md-datepicker 형식 변경 (0) | 2023.02.26 |
WordPress paginate_links - 사용방법 (0) | 2023.02.26 |
Angular.js 및 ASP넷 MVC 4 (0) | 2023.02.26 |
Wordpress 4.9+에서 admin-ajax.php의 PHP 오류 표시 (0) | 2023.02.26 |