This code is used to get the directory of the current plugin: plugin_dir_url( __FILE__ ).
What should I use to get the directory of the current theme?
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
I think you have to be a little careful because it depends on what you are trying to do.
If you are using a child theme get_template_directory(); will still go to the parent theme. However get_stylesheet_directory(); will go to the current theme, child or parent. Also, both these functions return absolute server paths.
If you wanted a fully formed URI, for links or images, you should use get_template_directory_uri(); or get_stylesheet_directory_uri(); using the correct one for the reasons stated.
Summary
get_stylesheet_directory(): file path to current Theme directoryget_stylesheet_directory_uri(): url path to current Theme directoryget_template_directory(): file path to parent Theme directoryget_template_directory_uri(): url path to parent Theme directory
Method 2
get_stylesheet_directory_uri is what you want. it returns the URL of the current theme. get_stylesheet_directory will return the file path on the server.
For example:
<img src="<?php echo get_stylesheet_directory_uri(); ?>/assets/image.png" />
If you need the parent theme, get_template_directory and get_template_directory_uri are the equivalents.
If there is no parent theme then both will return the same value.
Further reading:
get_stylesheet_directory- absolute folder path of current theme
- e.g.
/var/www/yoursite/wp-content/themes/child_theme
get_template_directory- absolute folder path of parent theme
- e.g.
/var/www/yoursite/wp-content/themes/parent_theme
get_stylesheet_directory_uri- full URL of current theme
- e.g.
https://example.com/wp-content/themes/child_theme
get_template_directory_uri- full URL of parent theme
- e.g.
https://example.com/wp-content/themes/parent_theme
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0