更新用户配置文件时执行插件功能

时间:2015-04-02 08:50:23

标签: php wordpress

我写了一个包含多个功能的Wordpress插件。这个插件按预期工作,所有功能都可以完成它们的工作。现在,当用户更新他的个人资料时,我需要调用其中一个插件函数。

我在插件中尝试了以下代码,但它没有用。

add_action( 'profile_update', 'myfunction');

使用Wordpress钩子的最佳做法是什么?如何在更新用户配置文件时从我的插件中调用该函数?

这是我的小插件的结构:

<?php
/*
Plugin Name: myplugin
*/
add_action( 'admin_menu', 'myplugin' );

function myplugin() {
add_options_page( 'myplugin', 'myplugin', 'manage_options', 'myplugin_id', 'myplugin_options' );
}
function myplugin() {
if ( !current_user_can( 'manage_options' ) )  {
    wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
?>
<div class="wrap">
<?php    echo "<h2>" . 'Galette users sync' . "</h2>"; ?>

<form name="galette" method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI']); ?>">
    <input type="submit" name="Submit" value="Mise à jour" />
</form>
<?php
function function1() {
    stuff
}
function function2() {
    stuff
}
function function3() {
    stuff
}
function function4() {
    stuff
}
if($_SERVER['REQUEST_METHOD']=='POST')
{
       function4();
} 
echo '</div>';
}

?>

我想在用户更新个人资料时调用function2()

任何人的帮助?

1 个答案:

答案 0 :(得分:0)

你有太多陷入一两个钩子:

//is run when you edit YOUR profile, and save it
add_action( 'personal_options_update', 'function2' );
//is run when you edit ANY OTHER profile and save it
add_action( 'edit_user_profile_update', 'function2' );

在这里阅读更多关于钩子的信息: http://codex.wordpress.org/Plugin_API/Hooks

相关问题