如何在WordPress插件中使用WooCommerce功能?

时间:2013-10-01 07:07:39

标签: wordpress plugins woocommerce

如何在插件中使用WooCommerce挂钩?这是我想要做的:

add_filter('woocommerce_edit_product_columns', 'pA_manage_posts_columns');
function pA_manage_posts_columns($columns, $post_type = 'product') {
global $woocommerce;
if ( in_array( $post_type, array( 'product') ) ) {
    $columns['offering_price'] = __( 'offering price', 'your_text_domain' ); // this offering price title 
    $columns['offering_qty'] = __( 'Qty', 'your_text_domain' ); // add the quantity title
    }
unset($columns['name']);
return $columns;

以下是我在插件中添加WooCommerce的方法:

$ds = DIRECTORY_SEPARATOR;
$base_dir = realpath(dirname(__FILE__)  . $ds . '..') . $ds;
$file = "{$base_dir}woocommerce{$ds}woocommerce.php"; 
include_once($file);

仍无法从

获取输出
print_r($woocommerce);

1 个答案:

答案 0 :(得分:1)

你将钩子与回调混合在了一起。原始通话位于this file

add_filter( 'manage_edit-product_columns', 'woocommerce_edit_product_columns' );

您的代码应为:

add_filter( 'manage_edit-product_columns', 'pA_manage_posts_columns', 15 );

function pA_manage_posts_columns( $columns ) 
{
    global $woocommerce;
    $columns['offering_price'] = __( 'offering price', 'your_text_domain' ); // this offering price title 
    $columns['offering_qty'] = __( 'Qty', 'your_text_domain' ); // add the quantity title
    unset($columns['name']);
    return $columns;
}

请注意,回调中没有post_type参数。过滤器挂钩已经知道帖子类型是什么:manage_edit-product_columns

正如Obmerk Kronen pointed out所示,不需要包含任何WooCommerce文件,所有功能都可以使用。