我尝试使用get_template_directory()
从特定主题加载文件,但路径不正确,并且在尝试从目录调用特定函数时导致错误。
get_template_directory()
正在返回...html/wp-content/themes/mysite.com v2
而不是正确的目录,即...html/wp-content/themes/mysite-v2
(使用破折号,而不是空格)。
get_template_directory()
在哪里定义,如何更改为引用正确的目录?
答案 0 :(得分:1)
顶级域名(TLD) (即.com
,.org
,.net
)不能包含短划线( - )。
您的浏览器正在尝试直接在您的域后解释破折号的含义,但是不成功,因此用网址编码的字符串替换破折号。
<强>更新强>
您可以使用Wordpress'get_template_template_uri()
并连接所需文件相对于活动主题根文件夹的位置。
答案 1 :(得分:1)
我的问题的解决方案是使用Wordpress&#39; update_option
函数更新到正确的主题文件夹。
update_option('template', 'mysite-v2');
在调用get_template_directory()
成功更新我的主题文件夹中get_template_directory()
的所有调用之前执行此操作,以反映我传入的主题。