如果PHP中的file_exists发出wordpress

时间:2016-06-30 23:52:39

标签: php wordpress

我正在尝试创建代码来检查我的网站上是否存在图像,如果没有则显示默认图像。在一种情况下,我知道该文件存在,并可以使用我想要file_exist使用的变量将其链接到该文件!

$menuCategories = get_categories( array(
   'child_of' => $whichGrade,));

foreach ( $menuCategories as $menuCategory ) { ?>
   <?php
        $linktoicon = get_bloginfo('template_directory') ."/images/menuicon_".$menuCategory->slug.".png";
        if (file_exists($linktoicon)) {
           $iconref = $menuCategory->slug; 
        }else { 
            $iconref = "default";
        } ?>
           <a href='<?php echo $linktoicon;  ?>'> <?phpvar_dump($iconref); ?></a>
<?php }?>

$ linktoicon`是“http://mybritishhelper.com/wp-content/themes/wpex-magtastico/images/menuicon_colours.png

谢谢。

1 个答案:

答案 0 :(得分:2)

PHP file_exists不与URL一起使用,它用于服务器本身文件的路径。不是问题。首先,我们需要获取主题模板目录的路径:

$templateDirectory = get_template_directory();

假设您提供的链接位于您自己的服务器上,则图像的完整路径为

$pathToImage = $templateDirectory . '/images/menuicon_colours.png';

我们现在可以使用以下

检查您的图像是否存在
if (file_exists($pathToImage)) {
// Do stuff
}

希望这会有所帮助。有关参考,请参阅file_existsget_template_directory()

的文档