Title: Basic URL ShortCodes
Author: Vikas Sharma
Published: <strong>July 20, 2017</strong>
Last modified: August 11, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/basic-url-shortcodes.svg)

# Basic URL ShortCodes

 By [Vikas Sharma](https://profiles.wordpress.org/devikas301/)

[Download](https://downloads.wordpress.org/plugin/basic-url-shortcodes.4.1.0.zip)

 * [Details](https://mri.wordpress.org/plugins/basic-url-shortcodes/#description)
 * [Reviews](https://mri.wordpress.org/plugins/basic-url-shortcodes/#reviews)
 *  [Installation](https://mri.wordpress.org/plugins/basic-url-shortcodes/#installation)
 * [Development](https://mri.wordpress.org/plugins/basic-url-shortcodes/#developers)

 [Support](https://wordpress.org/support/plugin/basic-url-shortcodes/)

## Description

Sometimes you need to display your website’s base URL, active theme URL or uploads
folder URL directly inside your content editor.

Basic URL Shortcodes lets you insert important WordPress URLs using simple shortcodes
inside posts, pages and widgets. Every shortcode accepts an optional `path` attribute
so you can build a full URL in one go, and the output is escaped for you.

#### Available Shortcodes

**[home_url]**
 The website’s home URL, as set in WordPress Settings. Example: `
http://localhost/wp-demo`

**[site_url]**
 The URL where WordPress itself is installed. This differs from `[
home_url]` when WordPress lives in a sub-directory. Example: `http://localhost/wp-
demo/wp`

**[theme_url_template]**
 The URL of the currently active theme. Child themes are
supported and return the child directory. Example: `http://localhost/wp-demo/wp-
content/themes/mytheme`

**[parent_theme_url]**
 The URL of the parent theme, even when a child theme is 
active. Example: `http://localhost/wp-demo/wp-content/themes/parenttheme`

**[UPLOAD_URL]** (also available as **[upload_url]**)
 The base URL of the WordPress
uploads directory. Example: `http://localhost/wp-demo/wp-content/uploads`

**[content_url]**
 The URL of the `wp-content` directory.

**[plugins_url]**
 The URL of the plugins directory.

**[admin_url]**
 The URL of the WordPress admin area. Example: `[admin_url path="
options-general.php"]`

**[rest_url]**
 The base URL of the REST API. Example: `[rest_url path="wp/v2/posts"]`

**[login_url]** and **[logout_url]**
 Login and logout URLs, with an optional `redirect`
attribute. Example: `[login_url redirect="http://localhost/wp-demo/account"]`

**[current_url]**
 The full URL of the page currently being viewed, query string
included.

#### Attributes

    ```
    path — appended to the URL. Works on every shortcode except `[login_url]`, `[logout_url]` and `[current_url]`.
    ```

Example: `[home_url path="contact"]` outputs `http://localhost/wp-demo/contact`

For safety, a `path` that starts with a scheme (`http:`), a protocol-relative prefix(`//`)
or a backslash is ignored, so a shortcode can never be used to point at another 
site.

    ```
    esc — set to `raw` to skip HTML entity encoding when the value is consumed by JavaScript rather than an `href`. Defaults to `html`.
    ```

Example: `[home_url esc="raw"]`

    ```
    redirect — where to send the visitor after login or logout. Off-site targets are rejected.
    ```

#### Prefixed aliases

Short tags such as `[home_url]` are generic and another plugin may already own them.
Every shortcode is therefore also registered with a `burl_` prefix — `[burl_home_url]`,`[
burl_upload_url]`, and so on — which is guaranteed not to clash. If a tag is already
taken by another plugin, this plugin leaves it alone rather than overriding it.

These shortcodes are useful when building custom layouts, inserting dynamic links
or when theme customization options are limited.

Lightweight, simple and fully compatible with modern WordPress editors.

### License

This plugin uses the GPLv3 license.

## Screenshots

[⌊Sample short code use.⌉⌊Sample short code use.⌉[

Sample short code use.

[⌊Rendered output.⌉⌊Rendered output.⌉[

Rendered output.

## Installation

Use WordPress Add New Plugin feature, searching “BASIC URL ShortCodes”, or download
the archive and:

 1. Unzip the archive on your computer
 2. Upload `basic-url-shortcodes` directory to the `/wp-content/plugins/` directory
 3. Activate the plugin through the ‘Plugins’ menu in WordPress
 4. Use shortcode & enjoy

## FAQ

### The shortcode shows as plain text instead of a URL

Shortcode tags are case sensitive. `[UPLOAD_URL]` and `[upload_url]` both work, 
but the other tags are lower case only.

If a tag still renders literally, another plugin or theme is likely registering 
the same tag. Use the prefixed alias instead, for example `[burl_home_url]`.

### Can I use these in a widget?

Yes. The plugin runs shortcodes through classic text widgets. In the block editor,
use a Shortcode block.

### Does `path` accept a query string?

Yes. `[home_url path="search?s=hello"]` works. Absolute or off-site values are ignored.

## Reviews

![](https://secure.gravatar.com/avatar/2d7bbf8bb3b03413c850a4e2ece125ea56d0133e053495c840813e948b6900cd?
s=60&d=retro&r=g)

### 󠀁[I love plugins that do what says on the box](https://wordpress.org/support/topic/i-love-plugins-that-do-what-says-on-the-box/)󠁿

 [aaylasecura](https://profiles.wordpress.org/aaylasecura/) February 5, 2025

I’m a developer and hate installing bloat or generally plugins that have 2MB of 
code to just do one simple thing. This one is just a screen-height of simplicity
that just adds the shortcodes it says it does. Perfect 🙂

![](https://secure.gravatar.com/avatar/272b6ea380d3b5632d977768820daf10da195cbb6182b96fee367cf0268b98ef?
s=60&d=retro&r=g)

### 󠀁[Great basic plugin](https://wordpress.org/support/topic/great-basic-plugin/)󠁿

 [kpdeveloper65](https://profiles.wordpress.org/kpdeveloper65/) September 19, 2019

Great basic plugin Exactly what I was looking for. Great works for website with 
any theme. Thanks!

 [ Read all 2 reviews ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/)

## Contributors & Developers

“Basic URL ShortCodes” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Vikas Sharma ](https://profiles.wordpress.org/devikas301/)

[Translate “Basic URL ShortCodes” into your language.](https://translate.wordpress.org/projects/wp-plugins/basic-url-shortcodes)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/basic-url-shortcodes/),
check out the [SVN repository](https://plugins.svn.wordpress.org/basic-url-shortcodes/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/basic-url-shortcodes/)
by [RSS](https://plugins.trac.wordpress.org/log/basic-url-shortcodes/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 4.1.0

 * Added `[site_url]`, `[parent_theme_url]`, `[content_url]`, `[plugins_url]`, `[
   admin_url]`, `[rest_url]`, `[login_url]`, `[logout_url]` and `[current_url]`.
 * Added a `path` attribute to every URL shortcode, with off-site values rejected.
 * Added an `esc` attribute for raw (non HTML-encoded) output.
 * Added `[upload_url]` as a lower-case alias of `[UPLOAD_URL]`.
 * Added `burl_` prefixed aliases for every shortcode.
 * Shortcodes are no longer registered if another plugin already owns the tag.
 * Shortcodes now run inside classic text widgets, as the description claimed.
 * Fixed the uploads URL not detecting a `wp_upload_dir()` error.
 * Added the missing licence, text domain and PHP requirement headers.
 * Renamed internal functions to a `ro_burl_` prefix and removed the closing PHP
   tag.

#### 4.0.2

 * Maintenance release.

## Meta

 *  Version **4.1.0**
 *  Last updated **17 hours ago**
 *  Active installations **4,000+**
 *  WordPress version ** 4.0 or higher **
 *  Tested up to **7.0.3**
 *  PHP version ** 7.0 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/basic-url-shortcodes/)
 * Tags
 * [permalink](https://mri.wordpress.org/plugins/tags/permalink/)[shortcode](https://mri.wordpress.org/plugins/tags/shortcode/)
   [theme](https://mri.wordpress.org/plugins/tags/theme/)[uploads](https://mri.wordpress.org/plugins/tags/uploads/)
   [url](https://mri.wordpress.org/plugins/tags/url/)
 *  [Advanced View](https://mri.wordpress.org/plugins/basic-url-shortcodes/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  2 5-star reviews     ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/basic-url-shortcodes/reviews/)

## Contributors

 *   [ Vikas Sharma ](https://profiles.wordpress.org/devikas301/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/basic-url-shortcodes/)