*/
/** We are located in WordPress Administration Screens */
-define('WP_ADMIN', true);
+if ( ! defined( 'WP_ADMIN' ) ) {
+ define( 'WP_ADMIN', true );
+}
if ( defined('ABSPATH') )
require_once(ABSPATH . 'wp-load.php');
else
require_once( dirname( dirname( __FILE__ ) ) . '/wp-load.php' );
-/** Allow for cross-domain requests (from the frontend). */
+/** Allow for cross-domain requests (from the front end). */
send_origin_headers();
require_once(ABSPATH . 'wp-admin/includes/admin.php');
/** 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() ) {
+ if ( empty( $action ) ) {
+ /**
+ * Fires on a non-authenticated admin post request where no action was supplied.
+ *
+ * @since 2.6.0
+ */
+ do_action( 'admin_post_nopriv' );
+ } else {
+ /**
+ * Fires on a non-authenticated admin post request for the given action.
+ *
+ * The dynamic portion of the hook name, `$action`, refers to the given
+ * request action.
+ *
+ * @since 2.6.0
+ */
+ do_action( "admin_post_nopriv_{$action}" );
+ }
+} else {
+ if ( empty( $action ) ) {
+ /**
+ * Fires on an authenticated admin post request where no action was supplied.
+ *
+ * @since 2.6.0
+ */
+ do_action( 'admin_post' );
+ } else {
+ /**
+ * Fires on an authenticated admin post request for the given action.
+ *
+ * The dynamic portion of the hook name, `$action`, refers to the given
+ * request action.
+ *
+ * @since 2.6.0
+ */
+ do_action( "admin_post_{$action}" );
+ }
+}