use*_*341 3 wordpress 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();
Run Code Online (Sandbox Code Playgroud)
它没有调用与之关联的钩子woocommerce_admin_order_data_after_order_details.
任何人都可以建议或分享编辑通过插件编辑订单详细信息模板的一些示例.请注意,我指的是管理员内部的订单明细模板,管理员可以从列表中查看任何订单的详细信息.
hel*_*ing 10
从我的自定义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' );
Run Code Online (Sandbox Code Playgroud)
这假定您已在结帐时收集了数据,并将数据保存为相关$order问题的后置元数据.
| 归档时间: |
|
| 查看次数: |
14414 次 |
| 最近记录: |