Automattic\WooCommerce\Admin
PageController::determine_current_page
Determine the current page ID, if it was registered with this controller.
Method of the class: PageController{}
No Hooks.
Returns
null. Nothing (null).
Usage
$PageController = new PageController(); $PageController->determine_current_page();
PageController::determine_current_page() PageController::determine current page code WC 10.4.3
public function determine_current_page() {
$current_url = '';
$current_screen_id = $this->get_current_screen_id();
if ( isset( $_SERVER['REQUEST_URI'] ) ) {
$current_url = esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) );
}
$current_query = wp_parse_url( $current_url, PHP_URL_QUERY );
parse_str( (string) $current_query, $current_pieces );
$current_path = empty( $current_pieces['page'] ) ? '' : $current_pieces['page'];
$current_path .= empty( $current_pieces['path'] ) ? '' : '&path=' . $current_pieces['path'];
foreach ( $this->pages as $page ) {
if ( isset( $page['js_page'] ) && $page['js_page'] ) {
// Check registered admin pages.
if (
$page['path'] === $current_path
) {
$this->current_page = $page;
return;
}
} else {
// Check connected admin pages.
if (
isset( $page['screen_id'] ) &&
$page['screen_id'] === $current_screen_id
) {
$this->current_page = $page;
return;
}
}
}
$this->current_page = false;
}