Как получить путь к текущей теме?

27

Этот код используется для получения каталога текущего плагина: plugin_dir_url( __FILE__ ).

Что я должен использовать, чтобы получить каталог текущей темы?

Porton
источник

Ответы:

47

Я думаю, что вы должны быть немного осторожны, потому что это зависит от того, что вы пытаетесь сделать.

Если вы используете дочернюю тему, get_template_directory();все равно перейдите к родительской теме. Однако get_stylesheet_directory();перейдем к текущей теме, дочерней или родительской. Кроме того, обе эти функции возвращают абсолютные пути к серверу.

Если вам нужен полностью сформированный URI для ссылок или изображений, вы должны использовать get_template_directory_uri();или get_stylesheet_directory_uri();использовать правильный по указанным причинам.

Резюме

jw60660
источник
3
+1. Всегда используйте stylesheetfilepath / url для ссылки на текущую тему и резервный templatefilepath / url для ссылки на родительскую тему.
Чип Беннетт
К сожалению, get_template_directory () возвращает полный путь к серверу, как /var/www/the/path/of/actual/wp-content/themes/mythemeэто не то, что вы хотите для работы с $ wp_filesystem, если WP подключается через FTP.
NoBugs
@NoBugs - я получал полный путь к серверу, но использование get_stylesheet_directory_uri () вместо get_stylesheet_directory () решило проблему.
TheLibzter