首页 > 解决方案 > 我如何将功能添加到已经存在的功能

问题描述

我在插件中有function.php。(此插件适用于主题)。

在已经存在的function.php中有

add_action( 'wp_ajax_nopriv_tmp_register', 'tmp_register' );
add_action( 'wp_ajax_tmp_register', 'tmp_register' );

function tmp_register() {

...bla bla

}

我如何向这个已经存在的函数添加一些 my_own 函数?

我已经尝试过了

if( !function_exists('tmp_register') )

add_filter('tmp_register', 'my_register', 10, 1);

if( !function_exists('tmp_register') ) {
    function my_register(){

        $usermobile          = trim( sanitize_text_field( wp_kses( $_POST['usermobile'], $allowed_html ) ));

        update_user_meta( $user_id, 'user_mobile_meta_value', $usermobile );

}

}

标签: phpwordpresswordpress-theming

解决方案


您需要删除钩子,然后添加您想要的功能。在您主题的 functions.php 中

remove_action( 'wp_ajax_nopriv_tmp_register', 'tmp_register' );
remove_action( 'wp_ajax_tmp_register', 'tmp_register' );
add_action( 'wp_ajax_nopriv_tmp_register', 'your_own_tmp_register' );
add_action( 'wp_ajax_tmp_register', 'your_own_tmp_register' );
function your_own_tmp_register(){
/*do what you need*/
}

推荐阅读