Fully Qualified Name: | Laminas\View\Helper\Navigation\Links |
Extends: | AbstractHelper |
Helper for printing elements
Name | Description | Defined By |
---|---|---|
__call() | Magic overload: Proxy calls to {@link findRelation()} or container | Links |
__invoke() | Helper entry point | Links |
__toString() | Magic overload: Proxy to {@link render()}. | AbstractHelper |
accept() | Determines whether a page should be accepted when iterating | AbstractHelper |
findActive() | Finds the deepest active page in the given container | AbstractHelper |
findAllRelations() | Finds all relations (forward and reverse) for the given $page | Links |
findRelation() | Finds relations of the given $rel=$type from $page | Links |
getAcl() | Returns ACL or null if it isn't set using {@link setAcl()} or {@link setDefaultAcl()} | AbstractHelper |
getContainer() | Returns the navigation container helper operates on by default | AbstractHelper |
getEventManager() | Get the event manager, if present. | AbstractHelper |
getIndent() | Returns indentation | AbstractHelper |
getMaxDepth() | Returns maximum depth a page can have to be included when rendering | AbstractHelper |
getMinDepth() | Returns minimum depth a page must have to be included when rendering | AbstractHelper |
getRenderFlag() | Returns the helper's render flag | Links |
getRenderInvisible() | Return renderInvisible flag | AbstractHelper |
getRole() | Returns ACL role to use when iterating pages, or null if it isn't set using {@link setRole()} or {@link setDefaultRole()} | AbstractHelper |
getServiceLocator() | Get the service locator. | AbstractHelper |
getUseAcl() | Returns whether ACL should be used | AbstractHelper |
hasAcl() | Checks if the helper has an ACL instance | AbstractHelper |
hasContainer() | Checks if the helper has a container | AbstractHelper |
hasRole() | Checks if the helper has an ACL role | AbstractHelper |
htmlify() | Returns an HTML string containing an 'a' element for the given page | AbstractHelper |
render() | Renders helper | Links |
renderLink() | Renders the given $page as a link element, with $attrib = $relation | Links |
searchRelChapter() | Searches the root container for forward 'chapter' relations of the given $page | Links |
searchRelNext() | Searches the root container for the forward 'next' relation of the given $page | Links |
searchRelPrev() | Searches the root container for the forward 'prev' relation of the given $page | Links |
searchRelSection() | Searches the root container for forward 'section' relations of the given $page | Links |
searchRelStart() | Searches the root container for the forward 'start' relation of the given $page | Links |
searchRelSubsection() | Searches the root container for forward 'subsection' relations of the given $page | Links |
searchRevSection() | Searches the root container for the reverse 'section' relation of the given $page | Links |
searchRevSubsection() | Searches the root container for the reverse 'section' relation of the given $page | Links |
setAcl() | Sets ACL to use when iterating pages | AbstractHelper |
setContainer() | Sets navigation container the helper operates on by default | AbstractHelper |
setDefaultAcl() | Sets default ACL to use if another ACL is not explicitly set | AbstractHelper |
setDefaultRole() | Sets default ACL role(s) to use when iterating pages if not explicitly set later with {@link setRole()} | AbstractHelper |
setEventManager() | Set the event manager. | AbstractHelper |
setIndent() | Set the indentation string for using in {@link render()}, optionally a number of spaces to indent with | AbstractHelper |
setMaxDepth() | Sets the maximum depth a page can have to be included when rendering | AbstractHelper |
setMinDepth() | Sets the minimum depth a page must have to be included when rendering | AbstractHelper |
setRenderFlag() | Sets the helper's render flag | Links |
setRenderInvisible() | Render invisible items? | AbstractHelper |
setRole() | Sets ACL role(s) to use when iterating pages | AbstractHelper |
setServiceLocator() | Set the service locator. | AbstractHelper |
setUseAcl() | Sets whether ACL should be used | AbstractHelper |
Magic overload: Proxy calls to {@link findRelation()} or container
Examples of finder calls:
// METHOD // SAME AS
$h->findRelNext($page); // $h->findRelation($page, 'rel', 'next')
$h->findRevSection($page); // $h->findRelation($page, 'rev', 'section');
$h->findRelFoo($page); // $h->findRelation($page, 'rel', 'foo');
Parameter Name | Type | Description |
---|---|---|
$method | string | |
$arguments | array |
Returns: mixed
Helper entry point
Parameter Name | Type | Description |
---|---|---|
$container | string|\AbstractContainer | container |
Returns: \Links
Magic overload: Proxy to {@link render()}.
This method will trigger an E_USER_ERROR if rendering the helper causes an exception to be thrown.
Implements {@link HelperInterface::__toString()}.
Returns: string
Determines whether a page should be accepted when iterating
Default listener may be 'overridden' by attaching listener to 'isAllowed' method. Listener must be 'short circuited' if overriding default ACL listener.
Rules:
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage | page |
$recursive | bool | [optional] |
Returns: bool Whether page should be accepted
Finds the deepest active page in the given container
Parameter Name | Type | Description |
---|---|---|
$container | \Navigation\AbstractContainer | container |
$minDepth | int|null | [optional] |
$maxDepth | int|null | [optional] |
Returns: array an associative array with the values 'depth' and 'page', or an empty array if not found
Finds all relations (forward and reverse) for the given $page
The form of the returned array:
// $page denotes an instance of Laminas\Navigation\Page\AbstractPage
$returned = array(
'rel' => array(
'alternate' => array($page, $page, $page),
'start' => array($page),
'next' => array($page),
'prev' => array($page),
'canonical' => array($page)
),
'rev' => array(
'section' => array($page)
)
);
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage | page |
$ | null|int | |
$flag |
Returns: array
Finds relations of the given $rel=$type from $page
This method will first look for relations in the page instance, then by searching the root container if nothing was found in the page.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage | page |
$rel | string | relation, |
$type | string | link |
Returns: \AbstractPage|array|null
Returns ACL or null if it isn't set using {@link setAcl()} or {@link setDefaultAcl()}
Implements {@link HelperInterface::getAcl()}.
Returns: \Acl\AclInterface|null ACL object or null
Returns the navigation container helper operates on by default
Implements {@link HelperInterface::getContainer()}.
If no container is set, a new container will be instantiated and stored in the helper.
Returns: \Navigation\AbstractContainer navigation container
Get the event manager, if present.
Internally, the helper will lazy-load an EM instance the first time it requires one, but ideally it should be injected during instantiation.
Returns: null|\EventManagerInterface
Returns indentation
Returns: string
Returns maximum depth a page can have to be included when rendering
Returns: int|null
Returns minimum depth a page must have to be included when rendering
Returns: int|null
Returns the helper's render flag
Returns: int
Return renderInvisible flag
Returns: bool
Returns ACL role to use when iterating pages, or null if it isn't set using {@link setRole()} or {@link setDefaultRole()}
Implements {@link HelperInterface::getRole()}.
Returns: string|\Acl\Role\RoleInterface|null
Get the service locator.
Used internally to pull named navigation containers to render.
Returns: \ContainerInterface
Returns whether ACL should be used
Implements {@link HelperInterface::getUseAcl()}.
Returns: bool
Checks if the helper has an ACL instance
Implements {@link HelperInterface::hasAcl()}.
Returns: bool
Checks if the helper has a container
Implements {@link HelperInterface::hasContainer()}.
Returns: bool
Checks if the helper has an ACL role
Implements {@link HelperInterface::hasRole()}.
Returns: bool
Returns an HTML string containing an 'a' element for the given page
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage | page |
Returns: string HTML string (<a href="…">Label</a>)
Renders helper
Implements {@link HelperInterface::render()}.
Parameter Name | Type | Description |
---|---|---|
$container | \AbstractContainer|string|null | [optional] |
Returns: string
Renders the given $page as a link element, with $attrib = $relation
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage | the |
$attrib | string | the |
$relation | string | relation |
Returns: string
Searches the root container for forward 'chapter' relations of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a chapter in a collection of documents.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|array|null
Searches the root container for the forward 'next' relation of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the next document in a linear sequence of documents. User agents may choose to preload the "next" document, to reduce the perceived load time.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|null
Searches the root container for the forward 'prev' relation of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the previous document in an ordered series of documents. Some user agents also support the synonym "Previous".
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|null
Searches the root container for forward 'section' relations of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a section in a collection of documents.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|array|null
Searches the root container for the forward 'start' relation of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the first document in a collection of documents. This link type tells search engines which document is considered by the author to be the starting point of the collection.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|null
Searches the root container for forward 'subsection' relations of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a subsection in a collection of documents.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|array|null
Searches the root container for the reverse 'section' relation of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a section in a collection of documents.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|null
Searches the root container for the reverse 'section' relation of the given $page
From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a subsection in a collection of documents.
Parameter Name | Type | Description |
---|---|---|
$page | \AbstractPage |
Returns: \AbstractPage|null
Sets ACL to use when iterating pages
Implements {@link HelperInterface::setAcl()}.
Parameter Name | Type | Description |
---|---|---|
$acl | \Acl\AclInterface | ACL |
Returns: \AbstractHelper
Sets navigation container the helper operates on by default
Implements {@link HelperInterface::setContainer()}.
Parameter Name | Type | Description |
---|---|---|
$container | string|\Navigation\AbstractContainer | Default |
Returns: \AbstractHelper
Sets default ACL to use if another ACL is not explicitly set
Parameter Name | Type | Description |
---|---|---|
$acl | \Acl\AclInterface | [optional] |
Returns: void
Sets default ACL role(s) to use when iterating pages if not explicitly set later with {@link setRole()}
Parameter Name | Type | Description |
---|---|---|
$role | mixed | [optional] |
Returns: void
Set the event manager.
Parameter Name | Type | Description |
---|---|---|
$events | \EventManagerInterface |
Returns: \AbstractHelper
Set the indentation string for using in {@link render()}, optionally a number of spaces to indent with
Parameter Name | Type | Description |
---|---|---|
$indent | string|int |
Returns: \AbstractHelper
Sets the maximum depth a page can have to be included when rendering
Parameter Name | Type | Description |
---|---|---|
$maxDepth | int | Default |
Returns: \AbstractHelper
Sets the minimum depth a page must have to be included when rendering
Parameter Name | Type | Description |
---|---|---|
$minDepth | int | Default |
Returns: \AbstractHelper
Sets the helper's render flag
The helper uses the bitwise '&' operator against the hex values of the
render constants. This means that the flag can is "bitwised" value of
the render constants. Examples:
// render all links except glossary
$flag = Links:RENDER_ALL ^ Links:RENDER_GLOSSARY;
$helper->setRenderFlag($flag);
// render only chapters and sections $flag = Links:RENDER_CHAPTER | Links:RENDER_SECTION; $helper->setRenderFlag($flag);
// render only relations that are not native W3C relations $helper->setRenderFlag(Links:RENDER_CUSTOM);
// render all relations (default) $helper->setRenderFlag(Links:RENDER_ALL);
Note that custom relations can also be rendered directly using the {@link renderLink()} method.
Parameter Name | Type | Description |
---|---|---|
$renderFlag | int |
Returns: \Links
Render invisible items?
Parameter Name | Type | Description |
---|---|---|
$renderInvisible | bool |
Returns: \AbstractHelper
Sets ACL role(s) to use when iterating pages
Implements {@link HelperInterface::setRole()}.
Parameter Name | Type | Description |
---|---|---|
$role | mixed | [optional] |
Returns: \AbstractHelper
Set the service locator.
Used internally to pull named navigation containers to render.
Parameter Name | Type | Description |
---|---|---|
$serviceLocator | \ContainerInterface |
Returns: \AbstractHelper
Sets whether ACL should be used
Implements {@link HelperInterface::setUseAcl()}.
Parameter Name | Type | Description |
---|---|---|
$useAcl | bool |
Returns: \AbstractHelper