Get a page by its path, similar to $pages->get('/path/to/page/') but with more options
- There are no exclusions for page status or access. If needed, you should validate access on any page returned from this method.
- In a multi-language environment, you must specify the
$useLanguages
option to be true, if you want a result for a $path that is (or might be) a multi-language path. Otherwise, multi-language paths will make this method return a NullPage (or 0 if getID option is true). - Partial paths may also match, so long as the partial path is completely unique in the site. If you don't want that behavior, double check the path of the returned page.
Available since version 3.0.6.
Example
// Get a page by path
$p = $pages->getByPath('/skyscrapers/atlanta/191-peachtree/');
// Now validate that the page we retrieved is valid
if($p->id && $p->viewable()) {
// Page is valid to display
}
// Get a page by path with options
$p = $pages->getByPath('/products/widget/', [
'useLanguages' => true,
'useHistory' => true
]);
Usage
// basic usage
$page = $pages->getByPath(string $path);
// usage with all arguments
$page = $pages->getByPath(string $path, $options = []);
Arguments
Name | Type(s) | Description |
---|---|---|
path | string | Path of page you want to retrieve. |
options (optional) | array, bool | array of options (below), or specify boolean for $useLanguages option only.
|
Return value
Page
int
API reference based on ProcessWire core version 3.0.236