Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

WordPress JS Ports

NPM version Downloads

This Repository Contain's usefull WordPress URL PHP functions which are ported into Javascript to with minimal Dependency


You Can install via NPM using below cmd

npm install wordpress-js-ports OR npm install wordpress-js-ports --save-dev


<script src="dist/wordpress-js-ports.min.js" type="text/javascript"/>

Ported Functions

  1. add_query_arg
  2. remove_query_arg
  3. trailingslashit
  4. untrailingslashit


Retrieves a modified URL query string. You can rebuild the URL and append query variables to the URL query by using this function. There are two ways to use this function; either a single key and value, or an associative array.

Using a single key and value:

add_query_arg( 'key', 'value', '' );
// Output :

Using an associative array:

add_query_arg( {
    'key1' : 'value1',
    'key2' : 'value2',
}, '' );
// Output :

Omitting the URL from either use results in the current URL being used (the value of window.location.href).


Removes an item or items from a query string.

Using Single Key To Remove

add_query_arg( 'key1', '' );
//Output :

Using An Array of Keys To Remove

add_query_arg( ['key1','key2'], '' );
//Output :


Appends a trailing slash.

Will remove trailing slash if it exists already before adding a trailing slash. This prevents double slashing a string or path.

The primary use of this is for paths and thus should be used for paths. It is not restricted to paths and offers no specific path support.

trailingslashit( '/home/julien/bin/dotfiles' ); 
//Output : /home/julien/bin/dotfiles/


Removes trailing slash if it exists.

The primary use of this is for paths and thus should be used for paths. It is not restricted to paths and offers no specific path support.

untrailingslashit( '/home/julien/bin/dotfiles/' ); 
//Output : /home/julien/bin/dotfiles

📝 Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


🤝 Contributing

If you would like to help, please take a look at the list of issues.

💰 Sponsor

I fell in love with open-source in 2013 and there has been no looking back since! You can read more about me here. If you, or your company, use any of my projects or like what I’m doing, kindly consider backing me. I'm in this for the long run.

  • How about we get to know each other over coffee? Buy me a cup for just $9.99
  • ☕️☕️ How about buying me just 2 cups of coffee each month? You can do that for as little as $9.99
  • 🔰 We love bettering open-source projects. Support 1-hour of open-source maintenance for $24.99 one-time?
  • 🚀 Love open-source tools? Me too! How about supporting one hour of open-source development for just $49.99 one-time ?

📜 License & Conduct

📣 Feedback

  • This repository if this project helped you! 😉
  • Create An 🔧 Issue if you need help / found a bug

Connect & Say 👋

Built With By Varun Sridharan 🇮🇳