2013-10-10 12 views
1

Я создал функцию в WordPress, где я хочу получить все изображения внутри заданного каталога, для которых я использую функцию glob PHP, по какой-то причине я не могу заставить это работать, это функция glob() отключена для использовать в WordPress?WordPress php glob(); не работает?

Кодекс, который не работает ...

function getAccreditaionLogos(){ 

    define('ACCREDPATH', get_stylesheet_directory_uri() . '/img/accreditations/'); 

    $images = glob(ACCREDPATH . '*.png'); 
    foreach($images as $key => $img): 
     $get_icons = '<li><img src="'.$img.'" /></li>'; 
     echo $get_icons; 
    endforeach; 
} 
+1

Что показывает 'var_dump (get_stylesheet_directory_uri())', что находится в 'ACCREDPATH' после всех назначений? –

+0

Хорошая точка, я использую неправильное объявление. – iamgraeme

ответ

4

Функция get_stylesheet_directory_uri() дает вам веб-адрес (HTTP: // ...) . Вы должны использовать абсолютный путь к системе. Вы можете получить его, используя функцию get_theme_root().

Ваша функция должна выглядеть следующим образом:

function getAccreditaionLogos(){ 

    define('ACCREDPATH', get_theme_root() . '/img/accreditations/'); 

    $images = glob(ACCREDPATH . '*.png'); 
    foreach($images as $key => $img): 
     $get_icons = '<li><img src="'.$img.'" /></li>'; 
     echo $get_icons; 
    endforeach; 
} 

Больше details of this function in the Wordpress Codex.

Смежные вопросы