API Documentation

Redirect extends InMemoryPage
in package

A basic redirect page. Is not discoverable by Hyde, instead you manually need to create the pages.

Typically, you'll do this in a build task. Pass data a new object, then call the store method. The store method will then render the redirect page to the project's site output directory. Once viewed in a web browser a meta refresh will redirect the user to the new location.

Since redirects are not discoverable, they also never show up in navigation, sitemaps, etc. If you want, you can however add the pages to the HydeKernel route index by adding it in the boot method of your AppServiceProvider, or any other suitable location. That way, your redirect will be saved by the standard build command.

Tags
example

Redirect::make('foo', 'bar')->store();

Table of Contents

Properties

$destination  : string
$fileExtension  : string
$identifier  : string
$matter  : FrontMatter
$metadata  : PageMetadataBag
$navigation  : NavigationData
$outputDirectory  : string
$path  : string
$routeKey  : string
$showText  : bool
$sourceDirectory  : string
$template  : string
$title  : string
$contents  : string
$macros  : array<string, callable>
$view  : string

Methods

__call()  : mixed
Dynamically handle macro calls to the class.
__construct()  : mixed
Create a new redirect instance that can be saved using the store method.
all()  : PageCollection<string|int, static>
Get a collection of all pages, parsed into page models.
arraySerialize()  : array<string|int, mixed>
Recursively serialize Arrayables
baseRouteKey()  : string
Get the route key base for the page model.
compile()  : string
Get the contents that will be saved to disk for this page.
create()  : static
Create a new redirect page file in the project's site output directory.
data()  : FrontMatter|mixed
Get a value from the computed page data, or fallback to the page's front matter, then to the default value.
fileExtension()  : string
Get the file extension of the source files for the page type.
files()  : array<string|int, string>
Get an array of all the source file identifiers for the model.
get()  : static
Get a page instance from the Kernel's page index by its identifier.
getBladeView()  : string
Get the view key or Blade file for the view to use to render the page contents when this strategy is used.
getCanonicalUrl()  : string|null
Get the canonical URL for the page to use in the `<link rel="canonical">` tag.
getContents()  : string
Get the contents of the page. This will be saved as-is to the output file when this strategy is used.
getIdentifier()  : string
Get the page model's identifier property.
getLink()  : string
Format the page instance to a URL path, with support for pretty URLs if enabled.
getOutputPath()  : string
Get the path where the compiled page will be saved.
getRoute()  : Route
Get the route object for the page.
getRouteKey()  : string
Get the route key for the page.
getSourcePath()  : string
Get the path to the instance source file, relative to the project root.
has()  : bool
See if a value exists in the computed page data or the front matter.
hasMacro()  : bool
Determine if a macro with the given name is registered for the instance.
isDiscoverable()  : bool
Returns whether the page type is discoverable through auto-discovery.
jsonSerialize()  : array<string|int, mixed>
macro()  : void
Register a macro for the instance.
make()  : static
Static alias for the constructor.
matter()  : FrontMatter|mixed
Get the front matter object, or a value from within.
metadata()  : PageMetadataBag
Get the generated metadata for the page.
navigationMenuGroup()  : string|null
Get the group of the page in the navigation menu, if any.
navigationMenuLabel()  : string
Get the label of the page in the navigation menu.
navigationMenuPriority()  : int
Get the priority of the page in the navigation menu.
outputDirectory()  : string
Get the output subdirectory to store compiled HTML files for the page type.
outputPath()  : string
Qualify a page identifier into a target output file path, relative to the _site output directory.
parse()  : static
Parse a source file into a new page model instance.
path()  : string
Get an absolute file path to the page's source directory, or a file within it.
pathToIdentifier()  : string
Format a filename to an identifier for a given model. Unlike the basename function, any nested paths within the source directory are retained in order to satisfy the page identifier definition.
setFileExtension()  : void
Set the file extension for the page type.
setOutputDirectory()  : void
Set the source directory for the page type.
setSourceDirectory()  : void
Set the output directory for the page type.
showInNavigation()  : bool
Can the page be shown in the navigation menu?
sourceDirectory()  : string
Get the directory where source files are stored for the page type.
sourcePath()  : string
Qualify a page identifier into file path to the source file, relative to the project root.
store()  : static
title()  : string
Get the page title to display in HTML tags like `<title>` and `<meta>` tags.
toArray()  : array<string|int, mixed>
Get the instance as an array.
toCoreDataObject()  : CoreDataObject
toJson()  : string
assignFactoryData()  : void
automaticallySerialize()  : array<string|int, mixed>
Automatically serialize all public properties.
callMacro()  : mixed
constructFactoryData()  : void
constructMetadata()  : void
normalizePath()  : string

Properties

$destination read-only

public string $destination

$identifier read-only

public string $identifier

$routeKey read-only

public string $routeKey

$showText read-only

public bool $showText

$template

public static string $template

Methods

__call()

Dynamically handle macro calls to the class.

public __call(string $method, array<string|int, mixed> $parameters) : mixed
Parameters
$method : string
$parameters : array<string|int, mixed>

__construct()

Create a new redirect instance that can be saved using the store method.

public __construct(string $path, string $destination[, bool $showText = true ]) : mixed
Parameters
$path : string

The URI path to redirect from.

$destination : string

The destination to redirect to.

$showText : bool = true

arraySerialize()

Recursively serialize Arrayables

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

baseRouteKey()

Get the route key base for the page model.

public static baseRouteKey() : string

This is the same value as the output directory.

Return values
string

compile()

Get the contents that will be saved to disk for this page.

public compile() : string

In order to make your virtual page easy to use we provide a few options for how the page can be compiled. If you want even more control, you can register a macro with the name 'compile' to overload the method, or simply extend the class and override the method yourself, either in a standard or anonymous class.

Return values
string

The compiled HTML for the page.

create()

Create a new redirect page file in the project's site output directory.

public static create(string $path, string $destination[, bool $showText = true ]) : static
Parameters
$path : string

The URI path to redirect from.

$destination : string

The destination to redirect to.

$showText : bool = true
Return values
static

data()

Get a value from the computed page data, or fallback to the page's front matter, then to the default value.

public data([string $key = null ][, mixed $default = null ]) : FrontMatter|mixed
Parameters
$key : string = null
$default : mixed = null
Return values
FrontMatter|mixed

fileExtension()

Get the file extension of the source files for the page type.

public static fileExtension() : string
Return values
string

files()

Get an array of all the source file identifiers for the model.

public static files() : array<string|int, string>

Note that the values do not include the source directory or file extension.

Return values
array<string|int, string>

get()

Get a page instance from the Kernel's page index by its identifier.

public static get(string $identifier) : static
Parameters
$identifier : string
Tags
throws
FileNotFoundException

If the page does not exist.

Return values
static

getBladeView()

Get the view key or Blade file for the view to use to render the page contents when this strategy is used.

public getBladeView() : string
Return values
string

getCanonicalUrl()

Get the canonical URL for the page to use in the `<link rel="canonical">` tag.

public getCanonicalUrl() : string|null

It can be explicitly set in the front matter using the canonicalUrl key, otherwise it will be generated based on the site URL and the output path, unless there is no configured base URL, leading to this returning null.

Return values
string|null

getContents()

Get the contents of the page. This will be saved as-is to the output file when this strategy is used.

public getContents() : string
Return values
string

getIdentifier()

Get the page model's identifier property.

public getIdentifier() : string

The identifier is the part between the source directory and the file extension. It may also be known as a 'slug', or previously 'basename', but it retains the nested path structure if the page is stored in a subdirectory.

For example, the identifier of a source file stored as '_pages/about/contact.md' would be 'about/contact', and 'pages/about.md' would simply be 'about'.

Return values
string

Format the page instance to a URL path, with support for pretty URLs if enabled.

public getLink() : string

Note that the link is always relative to site root, and does not contain ../ segments.

Return values
string

getOutputPath()

Get the path where the compiled page will be saved.

public getOutputPath() : string
Return values
string

Path relative to the site output directory.

getRoute()

Get the route object for the page.

public getRoute() : Route
Return values
Route

getRouteKey()

Get the route key for the page.

public getRouteKey() : string

The route key is the page URL path, relative to the site root, but without any file extensions. For example, if the page will be saved to _site/docs/index.html, the key is docs/index.

Route keys are used to identify page routes, similar to how named routes work in Laravel, only that here the name is not just arbitrary, but also defines the output location, as the route key is used to determine the output path which is $routeKey.html.

Return values
string

getSourcePath()

Get the path to the instance source file, relative to the project root.

public getSourcePath() : string
Return values
string

has()

See if a value exists in the computed page data or the front matter.

public has(string $key) : bool
Parameters
$key : string
Return values
bool

hasMacro()

Determine if a macro with the given name is registered for the instance.

public hasMacro(string $method) : bool
Parameters
$method : string
Return values
bool

isDiscoverable()

Returns whether the page type is discoverable through auto-discovery.

public static isDiscoverable() : bool
Return values
bool

jsonSerialize()

public jsonSerialize() : array<string|int, mixed>
Tags
inheritDoc
Return values
array<string|int, mixed>

macro()

Register a macro for the instance.

public macro(string $name, callable $macro) : void

Unlike most macros you might be used to, these are not static, meaning they belong to the instance. If you have the need for a macro to be used for multiple pages, you should create a custom page class instead.

Parameters
$name : string
$macro : callable

make()

Static alias for the constructor.

public static make([string $identifier = '' ][, FrontMatter|array<string|int, mixed> $matter = [] ][, string $contents = '' ][, string $view = '' ]) : static
Parameters
$identifier : string = ''
$matter : FrontMatter|array<string|int, mixed> = []
$contents : string = ''
$view : string = ''
Return values
static

matter()

Get the front matter object, or a value from within.

public matter([string $key = null ][, mixed $default = null ]) : FrontMatter|mixed
Parameters
$key : string = null
$default : mixed = null
Return values
FrontMatter|mixed

navigationMenuGroup()

Get the group of the page in the navigation menu, if any.

public navigationMenuGroup() : string|null
Return values
string|null

navigationMenuLabel()

Get the label of the page in the navigation menu.

public navigationMenuLabel() : string
Return values
string

navigationMenuPriority()

Get the priority of the page in the navigation menu.

public navigationMenuPriority() : int
Return values
int

outputDirectory()

Get the output subdirectory to store compiled HTML files for the page type.

public static outputDirectory() : string
Return values
string

outputPath()

Qualify a page identifier into a target output file path, relative to the _site output directory.

public static outputPath(string $identifier) : string
Parameters
$identifier : string
Return values
string

parse()

Parse a source file into a new page model instance.

public static parse(string $identifier) : static
Parameters
$identifier : string

The identifier of the page to parse.

Tags
throws
FileNotFoundException

If the file does not exist.

Return values
static

New page model instance for the parsed source file.

path()

Get an absolute file path to the page's source directory, or a file within it.

public static path([string $path = '' ]) : string
Parameters
$path : string = ''
Return values
string

pathToIdentifier()

Format a filename to an identifier for a given model. Unlike the basename function, any nested paths within the source directory are retained in order to satisfy the page identifier definition.

public static pathToIdentifier(string $path) : string
Parameters
$path : string

Example: index.blade.php

Return values
string

Example: index

setFileExtension()

Set the file extension for the page type.

public static setFileExtension(string $fileExtension) : void
Parameters
$fileExtension : string

setOutputDirectory()

Set the source directory for the page type.

public static setOutputDirectory(string $outputDirectory) : void
Parameters
$outputDirectory : string

setSourceDirectory()

Set the output directory for the page type.

public static setSourceDirectory(string $sourceDirectory) : void
Parameters
$sourceDirectory : string

showInNavigation()

Can the page be shown in the navigation menu?

public showInNavigation() : bool
Return values
bool

sourceDirectory()

Get the directory where source files are stored for the page type.

public static sourceDirectory() : string
Return values
string

sourcePath()

Qualify a page identifier into file path to the source file, relative to the project root.

public static sourcePath(string $identifier) : string
Parameters
$identifier : string
Return values
string

store()

public store() : static
Return values
static

title()

Get the page title to display in HTML tags like `<title>` and `<meta>` tags.

public title() : string
Return values
string

toArray()

Get the instance as an array.

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

toJson()

public toJson([int $options = 0 ]) : string
Parameters
$options : int = 0
Return values
string

automaticallySerialize()

Automatically serialize all public properties.

protected automaticallySerialize() : array<string|int, mixed>
Return values
array<string|int, mixed>

callMacro()

protected callMacro(callable $macro, array<string|int, mixed> $parameters) : mixed
Parameters
$macro : callable
$parameters : array<string|int, mixed>

constructFactoryData()

protected constructFactoryData() : void

constructMetadata()

protected constructMetadata() : void

normalizePath()

protected normalizePath(string $path) : string
Parameters
$path : string
Return values
string

        
On this page

Search results