2016-06-30 2 views
1

私のサイトにイメージが存在するかどうかをチェックするコードを作成しようとしています。あるケースでは、ファイルが存在し、file_existで使用する変数を使ってファイルにリンクすることができます。PHPのfile_existsでwordpressを発行する場合

$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

問題は何ですか? – Dharam

答えて

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()のドキュメントを参照してください。

関連する問題