Page::getPid() 

\nn\t3::Page()->getPid($fallback = NULL); 

Get PID of the current page. In the frontend: The current TSFE->id In the backend: The page that was selected in the page tree Without context: The pid of the site root

\nn\t3::Page()->getPid();
\nn\t3::Page()->getPid( $fallbackPid );
Copied!

| @return int

Source Code 

public function getPid ( $fallback = null ) {
	// Normaler Frontend-Content: Alles beim alten
	if (\nn\t3::Environment()->isFrontend()) {
		if (($GLOBALS['TSFE'] ?? false) && $pid = $GLOBALS['TSFE']->id) {
			return $pid;
		}
		$request = \nn\t3::Environment()->getRequest();
		$pageArguments = $request->getAttribute('routing');
		if ($pid = $pageArguments['pageId'] ?? null) {
			return $pid;
		}
		$siteRoot = $this->getSiteRoot();
		if ($siteRoot && ($pid = $siteRoot['uid'] ?? false)) {
			return $pid;
		}
		return $pid;
	}
	// Versuch, PID über den Request zu bekommen
	if ($pid = $this->getPidFromRequest()) return $pid;
	// PID über site-configuration (yaml) ermitteln
	$site = \nn\t3::Environment()->getSite();
	if ($site && ($pid = $site->getConfiguration()['rootPageId'] ?? false)) return $pid;
	// Context nicht klar, dann PID der Site-Root holen
	if ($siteRoot = $this->getSiteRoot()) return $siteRoot['uid'];
	// Letzte Chance: Fallback angegeben?
	if ($fallback) return $fallback;
	// Keine Chance
	if (\nn\t3::Environment()->isFrontend()) {
		\nn\t3::Errors()->Exception('\nn\t3::Page()->getPid() could not determine pid');
	}
}
Copied!