public function ajax_request_single() {
		$action     = false;
		$action_key = ( true === $this->is_single ) ? $this->action : $this->is_single;

		if ( isset( $_REQUEST[ $action_key . '-action' ] ) && ! empty( $_REQUEST[ $action_key . '-action' ] ) ) {
			$action = $_REQUEST[ $action_key . '-action' ];
		} elseif ( isset( $_REQUEST[ $action_key ] ) && ! empty( $_REQUEST[ $action_key ] ) ) {
			$action = $_REQUEST[ $action_key ];
		}

		$_action = $this->extract_action_slug( $action );

		if ( false !== $action && isset( $this->actions[ $_action ] ) ) {
			if ( false === \is_user_logged_in() && true === $this->actions[ $_action ] ) {
				$this->trigger_ajax_callback( $action );
			} elseif ( \is_user_logged_in() === true ) {
				$this->trigger_ajax_callback( $action );
			}
		}

		\wp_die( 0 );
	}
public function ajax_request_single() {
		$action     = false;
		$action_key = ( true === $this->is_single ) ? $this->action : $this->is_single;

		if ( isset( $_REQUEST[ $action_key . '-action' ] ) && ! empty( $_REQUEST[ $action_key . '-action' ] ) ) {
			$action = $_REQUEST[ $action_key . '-action' ];
		} elseif ( isset( $_REQUEST[ $action_key ] ) && ! empty( $_REQUEST[ $action_key ] ) ) {
			$action = $_REQUEST[ $action_key ];
		}

		$_action = $this->extract_action_slug( $action );

		if ( false !== $action && isset( $this->actions[ $_action ] ) ) {
			if ( false === \is_user_logged_in() && true === $this->actions[ $_action ] ) {
				$this->trigger_ajax_callback( $action );
			} elseif ( \is_user_logged_in() === true ) {
				$this->trigger_ajax_callback( $action );
			}
		}

		\wp_die( 0 );
	}
public function ajax_request_single ( ) { $ action = false ; $ action_key = ( true === $ this -> is_single ) ? $ this -> action : $ this -> is_single ; if ( isset ( $ _REQUEST [ $ action_key . '-action' ] ) && ! empty ( $ _REQUEST [ $ action_key . '-action' ] ) ) { $ action = $ _REQUEST [ $ action_key . '-action' ] ; } elseif ( isset ( $ _REQUEST [ $ action_key ] ) && ! empty ( $ _REQUEST [ $ action_key ] ) ) { $ action = $ _REQUEST [ $ action_key ] ; } $ _action = $ this -> extract_action_slug ( $ action ) ; if ( false !== $ action && isset ( $ this -> actions [ $ _action ] ) ) { if ( false === \ is_user_logged_in ( ) && true === $ this -> actions [ $ _action ] ) { $ this -> trigger_ajax_callback ( $ action ) ; } elseif ( \ is_user_logged_in ( ) === true ) { $ this -> trigger_ajax_callback ( $ action ) ; } } \ wp_die ( 0 ) ; }
Triggers A Callback to a ajax request

@hook ajax_before_{ajax_action}
@hook ajax_after_{ajax_action}

if method not exists then below hook fires
@hook ajax_{ajax_action}
ajax_action will be replaced with {$this->action}-action from url
Triggers A Callback to a ajax request