Woocommerce - 无法删除产品变化
问题描述:
使用WooCommerce 2.6.1Woocommerce - 无法删除产品变化
我无法删除一个变量产品的产品变化:成绩仍然是在Ajax调用后的数据库。 似乎ajax调用不通过:把error_log(print_r('remove_variation',true));不输出任何内容(class-wc-ajax.php中的第387行)。 该操作添加到类的构造函数中。函数public function remove_variation()只是不被调用。
有没有人有同样的问题,并找到一种方法使其工作?
答
/**
* Trash a variation, don't delete it permanently.
*
* This is hooked to
* Hijack WooCommerce's WC_AJAX::remove_variation() "Delete Variation" Trash a variation if it is a subscription variation via ajax function
*/
public static function remove_variations() {
if (isset($_POST['variation_id'])) { // removing single variation
error_log("here3");
check_ajax_referer('delete-variation', 'security');
$variation_ids = array($_POST['variation_id']);
error_log($_POST['variation_id']);
} else { // removing multiple variations
error_log("here4");
check_ajax_referer('delete-variations', 'security');
$variation_ids = (array) $_POST['variation_ids'];
}
foreach ($variation_ids as $variation_id) {
$variation_post = get_post($variation_id);
error_log(print_r($variation_post,));
if ($variation_post && $variation_post->post_type == 'product_variation') {
$variation_product = get_product($variation_id);
if ($variation_product && $variation_product->is_type('subscription_variation')) {
wp_trash_post($variation_id);
}
}
}
die();
}
除去& & $ variation_product-> is_type( 'subscription_variation')来解决未删除的变化的问题。 http://support.woothemes.com/requests/162693应提供补丁,已报告问题。
看来WooCommerce订阅插件是原因。 – user3480616
我会建议将此提交给Woo支持,以便他们可以修复它。 – helgatheviking
完成了。这个支持一周没有反应,我在这里发布后,他们神奇地醒了过来。尽管如此,我最终还是在调试自己,因为他们对我的结论表示怀疑。所以我指出了问题所在(请参阅下面的答案),并且现在努力完成了,他们应该能够提供补丁。注意:这是一个商业插件,我不应该*做出贡献。 – user3480616