gpt4 book ai didi

php - 删除并覆盖 WooCommerce 流程注册操作

转载 作者:搜寻专家 更新时间:2023-10-31 21:34:07 24 4
gpt4 key购买 nike

我正在开发一个插件来自定义 woocommerce 注册并试图避免直接编辑核心文件。

我需要通过我的插件覆盖或替换 woocommerces includes/class-wc-form-handler.php 文件中的 process_registration 操作。

add_action( 'init', array( $this, 'process_registration' ) );

我试过点击链接,但没有用。此外,这些页面上提到的文件在 woocommerce 当前版本中不存在。我还检查了 woocommerce 文档,但似乎他们没有这个钩子(Hook)。

http://wordpress.org/support/topic/overriding-woocommerce_process_registration-in-child-theme-functionsphp

Woocommerce Hook : http://docs.woothemes.com/document/hooks/

如果有任何帮助,我将不胜感激!

最佳答案

有两个选项,考虑到 WC 方法的开头是这样的:

class WC_Form_Handler
public function __construct() {
add_action( 'init', array( $this, 'process_registration' ) );
}
public function process_registration() {
if ( ! empty( $_POST['register'] ) ) {
wp_verify_nonce( $_POST['register'], 'woocommerce-register' );
# etc
}
}
}
new WC_Form_Handler();
  1. 添加一个具有最高优先级的 init Hook ,然后复制 unset($_POST['register'])。 WC 未指定优先级,因此它在默认值 10 上运行。

    add_action( 'init', function() { /* dup, unset, do your thing */ }, 1 ); // priority 1
  2. 找到那个evil anonymous object Woo 隐藏它的钩子(Hook)的地方,这样你就可以:

    // pseudo code, go to WPSE for the real thing
    remove_hook( 'init', 'woo_process_registration' );

关于php - 删除并覆盖 WooCommerce 流程注册操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23980904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com