PageLinkHandler extends AbstractLinkHandler implements LinkHandlerInterface, LinkParameterProviderInterface

Link to a page record.

Internal

This class is a specific LinkHandler implementation and is not part of the TYPO3's Core API.

Table of Contents

Interfaces

LinkHandlerInterface
Interface for link handlers displayed in the LinkBrowser.
LinkParameterProviderInterface

Properties

$expandPage  : int
$iconFactory  : IconFactory
$linkAttributes  : array<string|int, string>
Available additional link attributes
$linkBrowser  : AbstractLinkBrowserController
$linkParts  : array<string|int, mixed>
Parts of the current link
$pageRenderer  : PageRenderer
$updateSupported  : bool
$view  : ViewInterface

Methods

__construct()  : mixed
canHandleLink()  : bool
Checks if this is the handler for the given link
formatCurrentUrl()  : string
Format the current link for HTML output
getBodyTagAttributes()  : array<string|int, string>
getLinkAttributes()  : array<string|int, mixed>
getScriptUrl()  : string
Returns the URL of the current script
getUrlParameters()  : array<string|int, string>
Provides an array or GET parameters for URL generation
initialize()  : mixed
isCurrentlySelectedItem()  : bool
Check if given value is currently the selected item
isUpdateSupported()  : bool
Return TRUE if the handler supports to update a link.
modifyLinkAttributes()  : array<string|int, string>
render()  : string
Render the link handler
setView()  : void
getBackendUser()  : BackendUserAuthentication
getLanguageService()  : LanguageService
getRecordsOnExpandedPage()  : mixed
This adds all content elements on a page to the view and lets you create a link to the element.
isPageLinkable()  : bool

Properties

$linkAttributes

Available additional link attributes

protected array<string|int, string> $linkAttributes = ['target', 'title', 'class', 'params', 'rel']

'rel' only works in RTE, still we have to declare support for it.

$linkParts

Parts of the current link

protected array<string|int, mixed> $linkParts = []

$updateSupported

protected bool $updateSupported = true

Methods

Checks if this is the handler for the given link

public canHandleLink(array<string|int, mixed> $linkParts) : bool

The handler may store this information locally for later usage.

Parameters
$linkParts : array<string|int, mixed>

Link parts as returned from TypoLinkCodecService

Return values
bool

formatCurrentUrl()

Format the current link for HTML output

public formatCurrentUrl() : string
Return values
string

getBodyTagAttributes()

public getBodyTagAttributes() : array<string|int, string>
Return values
array<string|int, string>

Array of body-tag attributes

getLinkAttributes()

public getLinkAttributes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getScriptUrl()

Returns the URL of the current script

public getScriptUrl() : string
Return values
string

getUrlParameters()

Provides an array or GET parameters for URL generation

public getUrlParameters(array<string|int, mixed> $values) : array<string|int, string>
Parameters
$values : array<string|int, mixed>

Array of values to include into the parameters or which might influence the parameters

Return values
array<string|int, string>

Array of parameters which have to be added to URLs

isCurrentlySelectedItem()

Check if given value is currently the selected item

public isCurrentlySelectedItem(array<string|int, mixed> $values) : bool
Parameters
$values : array<string|int, mixed>

Values to be checked

Return values
bool

Returns TRUE if the given values match the currently selected item

isUpdateSupported()

Return TRUE if the handler supports to update a link.

public isUpdateSupported() : bool

This is useful for e.g. file or page links, when only attributes are changed.

Return values
bool

modifyLinkAttributes()

public modifyLinkAttributes(array<string|int, string> $fieldDefinitions) : array<string|int, string>
Parameters
$fieldDefinitions : array<string|int, string>

Array of link attribute field definitions

Return values
array<string|int, string>

render()

Render the link handler

public render(ServerRequestInterface $request) : string
Parameters
$request : ServerRequestInterface
Return values
string

getRecordsOnExpandedPage()

This adds all content elements on a page to the view and lets you create a link to the element.

protected getRecordsOnExpandedPage(int $pageId) : mixed
Parameters
$pageId : int

Page uid to expand

isPageLinkable()

protected isPageLinkable(array<string|int, mixed> $page) : bool
Parameters
$page : array<string|int, mixed>
Return values
bool

        
On this page

Search results