Peut-être en utilisant la wp_redirect()
fonction dans le crochet d'activation. Dans l'exemple suivant myplugin_settings
est un espace réservé. Normalement, il s'agit simplement des fonctions $hook_suffix
de retour $hook_suffix = add_menu_page( /* etc. */ );
et des fonctions similaires.
CE CODE NE FONCTIONNE PAS, LIRE CI-DESSOUS
register_activation_hook(__FILE__, 'cyb_activation');
function cyb_activation()
{
// Don't forget to exit() because wp_redirect doesn't exit automatically
exit( wp_redirect( admin_url( 'options-general.php?page=myplugin_settings' ) ) );
}
Les références:
- Enregistrer le crochet d'activation
- admin_url ()
ÉDITER
La redirection à l'intérieur du crochet d'activation semble être effectuée avant que le plugin ne soit effectivement activé, peut-être à cause de l'appel de exit () avant que l'activation ne soit exécutée. Ce code semble bien fonctionner à l' aide activated_plugin actions hoook:
function cyb_activation_redirect( $plugin ) {
if( $plugin == plugin_basename( __FILE__ ) ) {
exit( wp_redirect( admin_url( 'options-general.php' ) ) );
}
}
add_action( 'activated_plugin', 'cyb_activation_redirect' );
Si vous utilisez ce code en dehors du fichier du plugin principal, vous devrez le remplacer __FILE__
par le chemin du fichier du plugin principal.
PENSÉE
Rediriger l'utilisateur après l'activation de votre plugin n'est pas une très bonne approche. Dans Wordpress, vous pouvez activer les plugins en bloc. Que se passe-t-il alors si vous effectuez une redirection dans cette situation? Vous interromprez l'activation de certains plugins, peut-être pas si votre plugin est le dernier activé, mais vous rompez définitivement l'expérience utilisateur.
exit;
appel coupe court l'activation.'options-general.php?page=myplugin_settings'
quelque chose de différent et valide. Quoi qu'il en soit, leexit
hook d'activation est exécuté avant que le plugin ne soit effectivement activé, donc cela ne fonctionne pas. J'ai édité la réponse avec un nouveau code de travail.Vous devriez pouvoir le faire comme ceci:
MISE À JOUR
Même s'il s'agit d'un commentaire en ligne, n'oubliez pas:
Exemple spécifique
MISE À JOUR 29/10/2013
Cela n'a pas été mentionné, mais veuillez noter que ma solution offre la possibilité de vérifier si c'est le cas ou de ne pas faire de redirection vers la page des paramètres du plugin. Vérifiez
my_plugin_activate
et l'état simy_plugin_redirect
.J'espère que cela aide!
la source
exit()
autourwp_redirect()
?Bonjour, j'ai utilisé la redirection du code du soufflet après l'activation du plugin. Vous pouvez utiliser ce code. Ça marche bien.
la source