#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