Referring to an URL like the following:
Here is a list of supported macros for destination "To URL" field:
Macro | Description |
---|---|
URL macros | |
{siteurl} | Web site address
Example
www.example.com/path/to/Joomla |
{scheme} | URL scheme
Example
http |
{host} | URL host
Example
www.example.com |
{port} | URL port number
Example
8080 |
{user} | User name
Example
fredbloggs |
{pass} | User password
Example
itsasecret |
{path} | URL path
Example
/path/to/Joomla/section/cat/index.php |
{query} | URL query string
Example
task=view&id=32 |
{queryfull} | URL query string full (with question mark)
Example
?task=view&id=32 |
{querybuild var1=value1,...,varN=valueN} | Builds URL query containing only specified variables. If a value is specified for a variable, this is assigned to the variable
Example
{querybuild id,task} => id=32&task=view |
{querybuildfull var1=value1,...,varN=valueN} | Same as 'querybuild' but with question mark
Example
{querybuildfull id,task} => ?id=32&task=view |
{querybuildappend var1=value1,...,varN=valueN} | Same as 'querybuild' but with ampersand
Example
{querybuildappend id,task} => &id=32&task=view |
{querydrop var1=value1,...,varN=valueN} | Builds URL query removing specified variables from the original query. If a value is specified for a variable, this is assigned to the variable (that is not dropped) - ENTERPRISE VERSION ONLY
Example
{querydrop task} => id=32 |
{querydropfull var1=value1,...,varN=valueN} | Same as 'querydrop' but with question mark - ENTERPRISE VERSION ONLY
Example
{querydropfull task} => ?id=32 |
{querydropappend var1=value1,...,varN=valueN} | Same as 'querydrop' but with ampersand - ENTERPRISE VERSION ONLY
Example
{querydropappend task} => &id=32 |
{queryvar varname,default} | Returns the current value for the variable 'varname' of the URL, or the value 'default' if 'varname' is not defined (where default = '' when not specified)
Example
{queryvar task} => view |
{requestvar varname,default} | Returns the current value for the variable 'varname' of the request, no matter about method (GET, POST, ...), or the value 'default' if 'varname' is not defined (where default = '' when not specified)
Example
{requestvar id} => 32 |
{authority} | URL authority string
Example
fredbloggs:itsasecret@www.example.com:8080 |
{baseonly} | Returns the base path only (empty when installed on root, i.e. it will never contains a trailing slash)
Example
/path/to/Joomla |
{pathfrombase} | Returns the path without the base part
Example
/section/cat/index.php |
{pathltrim pathtotrim} | Strip the string specified (pathtotrim) from the beginning of the path and returns the result
Example
{pathltrim /path/to} => /Joomla/section/cat/index.php |
{pathrtrim pathtotrim} | Strip the string specified (pathtotrim) from the end of the path and returns the result
Example
{pathrtrim /index.php} => /path/to/Joomla/section/cat |
{pathfrombaseltrim pathtotrim} | Same as 'pathltrim' but works on path without the base part - ENTERPRISE VERSION ONLY
Example
{pathfrombaseltrim /section} => /cat/index.php |
{pathfrombasertrim pathtotrim} | Same as 'pathrtrim' but works on path without the base part - ENTERPRISE VERSION ONLY
Example
{pathfrombasertrim index.php} => /section/cat/ |
{preg_match N}pattern{/preg_match} | Returns the N-th matched pattern on the 'full source URL', where N = 0 when not specified - ENTERPRISE VERSION ONLY
Example
{preg_match}/([^\/]+)(\.php|\.html|\.htm)/i{/preg_match} => index.php |
{routeurl} | Returns the routed (relative) URL using all current variables
Example
/using-joomla.html |
{routeurl var1,var2,var3=myvalue,..,varN} | Returns the routed (relative) URL for specified variables
Example
index.php?var1=value1&var2=value2&var3=myvalue&..&varN=valueN |
{pathfolder N} | Returns the N-th folder of the URL path - ENTERPRISE VERSION ONLY
Example
{pathfolder 4} of /path/to/Joomla/section/cat/index.php => section |
{pathfolder last-N} | Returns the (last-N)-th folder of the URL path, where N = 0 when not specified - ENTERPRISE VERSION ONLY
Example
{pathfolder last-1} of /path/to/Joomla/section/cat/index.php => cat |
Site macros | |
{sitename} | Global site name
Example
Global $sitename configuration value |
{globaldescription} | Global site meta description
Example
Global $MetaDesc configuration value |
{globalkeywords} | Global site meta keywords
Example
Global $MetaKeys configuration value |
{username} | Returns the current username
Example
{username} => admin |
{username default} | Returns the current username or the value 'default' for guest users
Example
{username nobody} => nobody |
{userid} | Returns the current user ID
Example
{userid} => 62 |
{userid default} | Returns the current user ID or the value 'default' for guest users
Example
{username 1001} => 1001 |
Database macros | |
{tableselect table,column,key}value{/tableselect} | Returns result of a SQL query (SELECT column FROM table WHERE key = value). Support #__ notation for table name
Example
{tableselect #__users,username,id}135{/tableselect} => SELECT username FROM #__users WHERE id = 135 |
{preg_select table,column,key,N}pattern{/preg_select} | Same as 'preg_match' but uses the matched result to execute a SQL query (SELECT column FROM table WHERE key = matchN). Support #__ notation for table name - ENTERPRISE VERSION ONLY
Example
{preg_select #__content,title,id,1}/id=([0-9]+)/i{/preg_match} => SELECT title FROM #__content WHERE id = 32 |
{placeholder_select table,column,key1=placeholder1,..,keyN=placeholderN} | Returns result of a SQL query (SELECT column FROM table WHERE key1 = ${placeholder1} AND ... AND keyN = ${placeholderN}) where ${placeholderN} is the value of the placeholder with name placeholderN. Support #__ notation for table name. The 'placeholder' must be previously defined (just placeholder name needed, not ${} format) - ENTERPRISE VERSION ONLY
Example
userId=62 |
String macros | |
{substr start,length}text{/substr} | Returns the portion of string specified by the start and length parameters. String are zero-based (i.e. first char has index 0)
Example
{substr 1,3}Joomla{/substr} => oom |
{strip_tags}text{/strip_tags} | Strip HTML and PHP tags from the given string
Example
{strip_tags}<p>hello<br/>Joomla</p>{/strip_tags} => helloJoomla |
{extract N}text{/extract} | Returns the Nth sentence delimited with carriage return (DOS, UNIX or MAC format). All HTML tags stripped
Example
{extract 1}<p>This is a sentence.\nAnd this is another one.</p>{/extract} => This is a sentence. |
{extractp N}text{/extractp} | Returns the Nth HTML paragraph <p></p>. All HTML tags stripped
Example
{extractp 2}<p>First paragraph</p><p>Second paragraph</p><p>Third paragraph</p>{/extractp} => Second paragraph |
{extractdiv N}text{/extractdiv} | Returns the Nth HTML paragraph <div></div>. All HTML tags stripped
Example
{extractp 3}<div>First paragraph</div><div>Second paragraph</div><div>Third paragraph</div>{/extractp} => Third paragraph |
{preg_subject N,subject}pattern{/preg_subject} | Returns the N-th matched pattern on the 'subject', where N = 0 when not specified. The 'subject' can contain placeholders, but cannot contain standalone '}' chars - ENTERPRISE VERSION ONLY
Example
{preg_subject 2,First/Second/Third}/([^\/]+)\/([^\/]+)\/([^\/]+)/i{/preg_subject} => Second |
{preg_placeholder N,placeholder}pattern{/preg_placeholder} | Returns the N-th matched pattern on the 'placeholder' evaluated string, where N = 0 when not specified. The 'placeholder' must be previously defined (just placeholder name needed, not ${} format)
Example
a=First/Second/Third |
{lowercase}pattern{/lowercase} | Returns the pattern in lower case
Example
{lowercase}ALL to Lower{/lowercase} => all to lower |
{uppercase}pattern{/uppercase} | Returns the pattern in upper case
Example
{uppercase}ALL to UppeR{/uppercase} => ALL TO UPPER |
{urldecode}pattern{/urldecode} | Returns the decode pattern using urldecode() function
Example
{urldecode}%2Fgoto%20home%2F{/urldecode} => /goto home/ |
{urlencode}pattern{/urlencode} | Returns the encoded pattern using urlencode() function
Example
{urlencode}/encode me/{/urlencode} => %2Fencode%20me%2F |
{rawurldecode}pattern{/rawurldecode} | Returns the decode pattern using rawurldecode() function
Example
{rawurldecode}foo%20bar%40baz{/rawurldecode} => foo bar@baz |
{rawurlencode}pattern{/rawurlencode} | Returns the encoded pattern using rawurlencode() function
Example
{rawurlencode}foo @+%/{/rawurlencode} => foo%20%40%2B%25%2F |
{str_replace search,replace}pattern{/str_replace} | Returns the pattern after replacing 'search' with 'replace'
Example
{str_replace john,scott}my name is john{/str_replace} => my name is scott |