Call page model in panel field

maybe the master of plugins @jenstornell might find this interesting…

// inside field code...

$page = $this->page();
$pageWithModel = null;
if(count(Page::$models) == 0) {
	// load only once even if field is called more often
	kirby()->models();
}
// if model exists
$cname = str::lower($page->template().'Page');
if(a::get(Page::$models, $page->template()) == $cname) {
	$pageWithModel = new $cname($page->parent(), $page->dirname());
}
// now do something with $pageWithModel that can not be done with $page
1 Like