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 param values, except for /, {, and } characters.
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.

Param values will be encoded, except for /, {, and } characters.

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 param values, except for /, {, and } characters.

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