未触发WooCommerce_PRODUCT_QUICK_EDIT_SAVE挂钩

时间:2020-11-20 作者:J.BizMai

我正在尝试在woocommerce产品的快速编辑中添加自定义字段。我设法显示字段并用jquery填充,但我无法保存更新的数据。

add_action( \'quick_edit_custom_box\', array( $action_class, $quick_edit_method_called ), 99, 3 );
add_action( \'admin_enqueue_scripts\', array( $action_class, $quick_edit_script ), 99 );
if( $post_type_slug === \'product\' ){
    add_action( \'woocommerce_product_quick_edit_save\', array( $action_class, $quick_edit_save_post ), 99, 1 );
}else{
    add_action( \'save_post\', array( $action_class, $quick_edit_save_post ), 99, 2 );
}
quick_edit_custom_boxadmin_enqueue_scripts 工作很好,但都不好woocommerce_product_quick_edit_save 也没有save_post 当管理员单击“快速编辑”中的“更新”按钮时激发。

为了测试它,我添加了wp_die(\'my test must stop here\'); 在…内$action_class::$quick_edit_save_post(). 没有成功。

有人有主意了?

1 个回复
最合适的回答,由SO网友:J.BizMai 整理而成

我发现了问题所在。

包含操作的代码被包装为以下代码:

global pagenow;
if ( $pagenow === "edit.php" && isset( $_GET[\'post_type\'] ) ){}
当有ajax调用时,$pagenow === admin-ajax.php$_GET === [ ["_fs_blog_admin"]=> string(4) "true" ] 这样就不会被解雇了。

相关推荐