Maison > Questions et réponses > le corps du texte
P粉0205562312023-09-05 00:57:37
Essayez ceci :
/** * template_redirect Action Hook. * Redirect users to home page * after deleting a custom post type post. */ function redirect_on_delete() { // Custom post type plural name or rewrite slug name. $custom_post_type = 'CUSTOM_POST_TYPE'; $regex = "/" . $custom_post_type . ".*" . preg_quote( "/?deleted=", "/" ) . "\d+" . "/i"; if ( preg_match( $regex, $_SERVER["REQUEST_URI"] ) ) { \nocache_headers(); if ( \wp_safe_redirect( esc_url( get_home_url() ) ) ) { exit; }; } } add_action( 'template_redirect', 'redirect_on_delete', 10, 1 );
P粉6098665332023-09-05 00:40:08
J'ai essayé de nombreux extraits de code à rediriger après la suppression de la publication personnalisée, mais aucun d'entre eux n'a fonctionné. J'ai donc essayé une autre approche : rediriger la page 404 vers un tableau de bord d'éditeur frontal personnalisé que j'ai créé pour les utilisateurs du rôle d'éditeur. Le code est le suivant :
function editor_redirect_404() { global $wp_query; if ( $wp_query->is_404 ) { wp_redirect( home_url( '/dashboard/' ) ); exit; } } add_action('template_redirect', 'editor_redirect_404', 1);
Je ne veux pas que les visiteurs du site rencontrent cela (ils ont des pages 404 régulières), donc cette redirection ne sera appliquée que si l'utilisateur est connecté et a le rôle d'éditeur. Ceci est réalisé en utilisant des générateurs conditionnels du plugin WPCodeBox.