为什么TEMPLATEPATH返回子目录的绝对路径?

时间:2013-03-23 07:40:27

标签: wordpress wordpress-theming

我正在使用框架来开发wordpress的主题。在安装框架之后,我创建了一个子主题,并在functions.php中包含我框架中的文件。

在其他2个项目中,一切正常,但在我的新项目中,我有一个错误。当我调用TEMPLATEPATH它返回子目录的绝对路径,但它必须返回父主题的路径。

有什么不对?

P.S。框架使用TEMPLATEPATH来包含他自己的文件,所以我需要了解如何解决这个问题。

3 个答案:

答案 0 :(得分:1)

您应该尝试使用get_template_directory_uri()来获取父主题目录,如下所示:

 echo get_template_directory_uri()/img/icon.png

如果您想从您的子主题目录中获取某些内容,可以使用get_stylesheet_directory_uri()

更多信息:

编辑:刚刚在问题的评论中注意到 McNab 的回复,也给这个家伙一些赞成。 :)

答案 1 :(得分:1)

我找到了解决问题的方法 我的父主题路径错误,因为在表格中的“wp_options”字段“模板”中的数据库是子主题名称。当我将此字段的值更改为父主题名称时,TEMPLATEPATH开始返回父主题的路径。

答案 2 :(得分:0)

这发生在我身上,因为我首先创建了我的子主题,并在创建我的父主题style.css文件之前激活了它。

要解决这个问题,您需要做的就是激活任何其他主题,然后重新激活您的子主题。这将更正wp_options表中的“模板”值。