对WordPress中的user_register挂钩的自定义操作

时间:2014-12-21 15:43:38

标签: wordpress hook user-registration

我尝试在WordPress中创建新的用户配置文件后实现自定义功能/操作。为了测试代码,我尝试在文件中编写一个文本作为函数执行的证明。 这是我在活动主题的functions.php文件

末尾插入的代码
if ( ! function_exists( 'register_for_cmsa' ) ) :
    function register_for_cmsa($user_id)    {
    // write in an external file
        // writeLogWP($msg) is a function from a file I have included in index.php
        writeLogWP("A new user is: " . $user_id);
    }
    add_action('user_register', 'register_for_cmsa');
endif;

因此,我通过管理面板添加了一个新用户。一旦我验证标准WP添加用户表单(wp-admin / user-new.php),我就会得到一个空白页面,这意味着上面的代码有问题。但是用户被添加到数据库中(如果我评论我的功能,它在用户列表中可见)。这里遇到的麻烦是在register_for_cmsa()函数中执行writeLogWP(“一个新用户是:”。$ user_id)语句。 我试图查看语句是否在函数外部工作,而总是在functions.php文件中。我注意到当我在WP站点中导航时它将消息写入外部文件,但是当我进入管理仪表板部分时它就会发布空白页面。 我的代码在“网站”方面被接受,但在“管理员”方面有误。 但是,代码不会在“站点”端执行,因为不会触发挂钩。只有当我转到'wp-admin / user-new.php'时它才被触发但是...我可以'测试它,因为上面的原因。 我真的很困惑,很高兴有你的意见,为什么不,解决方案。 感谢

1 个答案:

答案 0 :(得分:0)

访问WordPress管理员时未加载index.php,因此在这种情况下不会调用writeLogWP函数。将其移至functions.php应该可以解决问题。