回覆至:解決 WordPress 函式 get_template_directory_uri 指向父主題而不是子主題

詩語
管理員
  • 文章數量: 5,942
發帖數:9997
樓主
@feibisi

get_template_directory_uri() 將始終返回當前父主題的 URI 。

為了獲得子主題 URI,您需要使用 get_stylesheet_directory_uri()

您可以在文件中找到這些內容,以及獲取各種主題目錄位置的其他有用功能列表。

如果你喜歡使用一個常量,那麼 TEMPLATEPATH 類似於呼叫 get_template_directory()(即父主題),並且 STYLESHEETPATH 類似於呼叫 get_stylesheet_directory()(即,子主題) 。

這些常量由 WordPress 核心設定 wp-includes/default-constants.php,基本如下所示:

define('TEMPLATEPATH', get_template_directory());
...
define('STYLESHEETPATH', get_stylesheet_directory());

如果沒有子主題,那麼 「模板」 和 「樣式表」 功能都將返回父主題位置。

注意這些函式和以這些函式結尾的函式之間的區別_uri- 這些將返回絕對伺服器路徑 (例如。/home/example/public_html/wp-content/yourtheme),而_uri 函式將返回公共地址 (又名 URL)– 例如。 https://example.com/wp-content/themes/yourtheme 。