Skip to content

UrlHelper

Type
Class
Namespace
craft\helpers
Inherits
craft\helpers\UrlHelper
Since
3.0.0

Class Url

View source

Public Methods

MethodDescription
actionUrl()
baseCpUrl()Returns the control panel’s base URL (with a trailing slash) (sans control panel trigger).
baseSiteUrl()Returns the current site’s base URL (with a trailing slash).
baseUrl()Returns either the current site’s base URL or the control panel’s base URL, depending on the type of request this is.
buildQuery()Returns a query string based on the given params.
cpHost()Returns the control panel's host.
cpUrl()Returns a control panel URL.
encodeParams()Encodes a URL’s query string params.
getSchemeForTokenizedUrl()Returns what the scheme part of the URL should be (http/https) for any tokenized URLs in Craft (email verification links, password reset urls, share entry URLs, etc.
host()Returns the host info for the control panel or the current site, depending on the request type.
hostInfo()Parses a URL for the host info.
isAbsoluteUrl()Returns whether a given string appears to be an absolute URL.
isFullUrl()Returns whether a given string appears to be a "full" URL (absolute, root-relative or protocol-relative).
isProtocolRelativeUrl()Returns whether a given string appears to be a protocol-relative URL.
isRootRelativeUrl()Returns whether a given string appears to be a root-relative URL.
prependCpTrigger()Prepends the control panel trigger onto the given path.
removeParam()Removes a query string param from a URL.
rootRelativeUrl()Returns a root-relative URL based on the given URL.
siteHost()Returns the current site’s host.
siteUrl()Returns a site URL.
stripQueryString()Removes the query string from a given URL.
url()Returns either a control panel or a site URL, depending on the request type.
urlWithParams()Returns a URL with additional query string parameters.
urlWithScheme()Returns a URL with a specific scheme.
urlWithToken()Returns a URL with a 'token' query string param set to a given token.

actionUrl()

View source

Arguments

  • $path (string)
  • $params (array, string, null)
  • $scheme (string, null) – The scheme to use ('http' or 'https'). If empty, the scheme used for the current request will be used.
  • $showScriptName (boolean) – Whether the script name (index.php) should be included in the URL. Note that it’s only safe to set this to false for URLs that will be used for GET requests.

Returns

string

baseCpUrl()

Returns the control panel’s base URL (with a trailing slash) (sans control panel trigger).

View source

Returns

string

baseSiteUrl()

Returns the current site’s base URL (with a trailing slash).

View source

Returns

string

Throws

baseUrl()

Returns either the current site’s base URL or the control panel’s base URL, depending on the type of request this is.

View source

Returns

string

Throws

buildQuery()

Since
3.3.0

Returns a query string based on the given params.

View source

Arguments

Returns

string

cpHost()

Returns the control panel's host.

View source

Returns

string

cpUrl()

Returns a control panel URL.

View source

Arguments

Returns

string

encodeParams()

Since
3.7.24

Encodes a URL’s query string params.

View source

Arguments

Returns

string

getSchemeForTokenizedUrl()

Returns what the scheme part of the URL should be (http/https) for any tokenized URLs in Craft (email verification links, password reset urls, share entry URLs, etc.

View source

Arguments

  • $cp (boolean) – Whether this is for a control panel URL

Returns

string

host()

Returns the host info for the control panel or the current site, depending on the request type.

View source

Returns

string

Throws

hostInfo()

Parses a URL for the host info.

View source

Arguments

Returns

string

isAbsoluteUrl()

Returns whether a given string appears to be an absolute URL.

View source

Arguments

Returns

boolean

isFullUrl()

Returns whether a given string appears to be a "full" URL (absolute, root-relative or protocol-relative).

View source

Arguments

Returns

boolean

isProtocolRelativeUrl()

Returns whether a given string appears to be a protocol-relative URL.

View source

Arguments

Returns

boolean

isRootRelativeUrl()

Returns whether a given string appears to be a root-relative URL.

View source

Arguments

Returns

boolean

prependCpTrigger()

Since
3.5.0

Prepends the control panel trigger onto the given path.

View source

Arguments

Returns

string

removeParam()

Since
3.2.2

Removes a query string param from a URL.

View source

Arguments

Returns

string

rootRelativeUrl()

Since
3.1.11

Returns a root-relative URL based on the given URL.

View source

Arguments

Returns

string

siteHost()

Returns the current site’s host.

View source

Returns

string

Throws

siteUrl()

Returns a site URL.

View source

Arguments

Returns

string

Throws

stripQueryString()

Removes the query string from a given URL.

View source

Arguments

  • $url (string) – The URL to check.

Returns

string – The URL without a query string.

url()

Returns either a control panel or a site URL, depending on the request type.

View source

Arguments

  • $path (string)
  • $params (array, string, null)
  • $scheme (string, null)
  • $showScriptName (boolean, null) – Whether the script name (index.php) should be included in the URL. By default (null) it will defer to the omitScriptNameInUrls config setting.

Returns

string

urlWithParams()

Returns a URL with additional query string parameters.

View source

Arguments

Returns

string

urlWithScheme()

Returns a URL with a specific scheme.

View source

Arguments

  • $url (string) – The URL
  • $scheme (string) – The scheme ('http' or 'https')

Returns

string

Throws

urlWithToken()

Returns a URL with a 'token' query string param set to a given token.

View source

Arguments

Returns

string