Im seeing WordPress plugins either use plugins_url or plugin_dir_url when creating constants to some of their folders. Is one better than the other?

examples:

define( 'MEMBERS_URI', trailingslashit( plugin_dir_url( __FILE__ ) ) );
define( 'WPACCESS_INC', plugins_url( 'inc', __FILE__ ) , true );

1

Checkout – wp-includes/plugin.php#L585

plugin_dir_url() function internally uses plugins_url() to get the link to plugin directory.

plugin_dir_url()

This will return url of the plugin directory with a trailing slash at the end. So this can be easily used to link to the plugin directory.

e.g – http://www.example.com/wp-content/plugins/foo/

plugins_url

If no arguments are passed this will deliver the same result as the above function; but with or without a trailing slash at the end. This can be configured to link to files within plugin directory; a useful shortcut.

e.g –

plugins_url( 'img/bar.jpg' , __FILE__ ) will return a url like
http://www.example.com/wp-content/plugins/foo/img/bar.jpg

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *