2013-10-01 4 views
1

Как использовать WooCommerce в моем плагине? Вот что я пытаюсь сделать:Как использовать функции WooCommerce в плагине WordPress?

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); 
+0

вы не должны включать плагин, но активируйте его ... –

+0

Спасибо, вот как я активировал плагин: 'code' include_once (ABSPATH. 'Wp-admin/includes/plugin.php'); activate_plugin (ABSPATH. 'Wp-content/plugins/woocommerce/woocommerce.php'); все еще не может получить крючок, добавляя новые столбцы или отмененные столбцы. – user2833755

+0

Почему бы вам просто не активировать плагин обычно '?? зачем вам его включать? –

ответ

1

You» повторно смешайте крючок с обратным вызовом. Оригинальный звонок в 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, все его функции доступны уже вам.

+0

Спасибо, теперь он работает для добавления новых столбцов, однако я не могу заставить его отключить столбцы. – user2833755

+0

@ user2833755, нам нужно поставить более низкий приоритет ('15', по умолчанию -' 10'), поэтому наш фильтр выполняет * после того, как * WC добавил свои столбцы. Ответ обновляется и работает сейчас. – brasofilo

Смежные вопросы