Пути WordPress с помощью GLOB PHP

#php #wordpress #glob

#php #wordpress #глоб

Вопрос:

привет, я использую приведенный ниже код, чтобы попытаться прочитать каталог и отобразить все файлы JPEG из него, но благодаря путям WordPress я отклеиваюсь:

 <?php 
    $path = get_bloginfo('template_directory');
    $files = glob("homepageBottomPictures/*.*");
    var_dump($files);
    for ($i=1; $i<count($files); $i  ) {
        $num = $files[$i];
        echo '<img src="'.$num.'" alt="random image" class="homepageBtmImg">'."amp;nbsp;amp;nbsp;";
    } 
    echo '<div class="clearfix"></div>';
?>
  

Итак, в моем каталоге тем у меня есть папка под названием homepageBottomPictures с файлами JPEG в них. Что я могу сделать? (На данный момент в $files ничего не возвращается)

Комментарии:

1. Где находится этот php-скрипт по отношению к homepageBottomPictures/ ? Та же папка?

Ответ №1:

Попробуйте использовать: get_theme_root() . get_template() . '/homepageBottomPictures/*.*' чтобы получить свой каталог

Ответ №2:

Возможно, вам это покажется полезным, вот некоторый код, который я написал, чтобы получить файлы изображений нескольких типов с определенным шаблоном в имени файла. Вы могли бы немного изменить это, чтобы извлекать только jpg любого шаблона.

 function returnimages($dirname, $photo_id) {

        $pattern="(^".$photo_id."[A-Za-z0-9_]*.jpg$)|(^".$photo_id."[A-Za-z0-9_]*.png$)|(^".$photo_id."[A-Za-z0-9_]*.jpeg$)|(^".$photo_id."[A-Za-z0-9_]*.gif$)"; //valid image extensions
        $files = array();
        $curimage=0;

        if($handle = opendir($dirname)) {
            while(false !== ($file = readdir($handle))){
                if(eregi($pattern, $file)){         //if this file is a matching image
                    $files[$curimage] = $dirname.$file;   //Save it in the array
                    $curimage  ;
                }//end if
            }//end while

            closedir($handle);
        }//end if   
return($files);

}//end returnimages