_dir是否无法识别有效的目录PHP Wordpress

_dir是否无法识别有效的目录PHP Wordpress,php,wordpress,Php,Wordpress,我正在为我的网站准备一个滑动条,这是用Wordpress完成的。其思想是滑块接受两个参数,一个路径名和一个项目名,并基于此进行填充 以下是函数: 函数get\u game\u slider($name,$src\u dir){ $image\u dir=$src\u dir.$name; if(is_dir($image_dir)){ /*目录有效,请在此处搜索目录*/ } } 该函数位于my functions.php文件中。它是从同一目录中的内容模板调用的,如下所示: $dir=get\u

我正在为我的网站准备一个滑动条,这是用Wordpress完成的。其思想是滑块接受两个参数,一个路径名和一个项目名,并基于此进行填充

以下是函数:

函数get\u game\u slider($name,$src\u dir){ $image\u dir=$src\u dir.$name; if(is_dir($image_dir)){ /*目录有效,请在此处搜索目录*/ } } 该函数位于my functions.php文件中。它是从同一目录中的内容模板调用的,如下所示:

$dir=get\u template\u directory\u uri()。“/资产/图像/缩略图/游戏/”;
echo get_game_滑块(“7小时”,$dir);
所以它向我报告的路径名是“”,这是一个有效的目录。但是,它拒绝承认这一点

作为测试,我在Wordpress安装之外构建了它,它发现它没有问题(我使用了绝对路径而不是get_template_directory_uri())。似乎只有当我在Wordpress页面上使用它时,它才会给我这个问题

这是Wordpress的愚蠢之处吗?对于is_dir()为什么不将此目录视为目录,我已经没有什么想法了

所以它向我报告的路径名是 "" 这是一个有效的目录

is_dir()
在web上不起作用,它只在本地运行。也就是说,它需要一个目录名,而不是URI。您需要将服务器上目录的实际路径传递给它


编辑:
is_dir()
确实适用于某些流包装器,但HTTP不是其中之一。

代码在我看来是正确的,这里有一些您可以测试的东西

1) 停用主题并选择另一个主题,然后重新激活你的主题,看看当你重新激活它时,它是否会有不同,wordpress会添加一些内容并获得正确的信息


2) 如果这不起作用,您可以用get-bloginfo(“template-url”)替换get-template-directory-url()

不要使用
get-template-directory-uri()
,使用

返回当前主题(例如:/home/user/public\u html/wp content/themes/my\u theme)目录的绝对服务器路径,而不是URI


这就成功了。我需要为is_dir()获取_template_directory(),然后为实际引用图像获取_template_directory_uri()。谢谢