From a6755201d8ef1ffaa346f64822d726cae4dc40cf Mon Sep 17 00:00:00 2001 From: Drew Jaynes Date: Thu, 8 May 2014 10:27:14 +0000 Subject: [PATCH] Convert and rename the `$action` hook in wp-admin/admin-post to two dynamic hook sets. * `admin_post_nopriv{$request_action}` is fired for logged-out users * `admin_post{$request_action}` is fired for logged-in users Props Otto42, DrewAPicture. See #26869. Built from https://develop.svn.wordpress.org/trunk@28349 git-svn-id: http://core.svn.wordpress.org/trunk@28177 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/admin-post.php | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/wp-admin/admin-post.php b/wp-admin/admin-post.php index 7103994073..40200a3490 100644 --- a/wp-admin/admin-post.php +++ b/wp-admin/admin-post.php @@ -26,20 +26,24 @@ nocache_headers(); /** This action is documented in wp-admin/admin.php */ do_action( 'admin_init' ); -$action = 'admin_post'; +$action = empty( $_REQUEST['action'] ) ? '' : '_' . $_REQUEST['action']; -if ( !wp_validate_auth_cookie() ) - $action .= '_nopriv'; - -if ( !empty($_REQUEST['action']) ) - $action .= '_' . $_REQUEST['action']; - -/** - * Fires the requested handler action. - * - * admin_post_nopriv_{$_REQUEST['action']} is called for not-logged-in users. - * admin_post_{$_REQUEST['action']} is called for logged-in users. - * - * @since 2.6.0 - */ -do_action( $action ); +if ( ! wp_validate_auth_cookie() ) { + /** + * Fires the requested handler action for logged-out users. + * + * The dynamic portion of the hook name, $action, refers to the handler action. + * + * @since 2.6.0 + */ + do_action( "admin_post_nopriv{$action}" ); +} else { + /** + * Fires the requested handler action for logged-in users. + * + * The dynamic portion of the hook name, $action, refers to the handler action. + * + * @since 2.6.0 + */ + do_action( "admin_post{$action}" ); +}