我有以下代码来显示文件夹fname中的图像(upload / 2017/05 / fname)
[php]
$upload_dir = wp_upload_dir();
$logo_dir = ( $upload_dir['baseurl'] . '/2017/05/fname/' );
echo $logo_dir . '-----<br />';
$images = glob( $logo_dir . "*.PNG" );
foreach( $images as $image ) {
echo "$image";
}
[/php]
但这仅显示https://example.com/jobs/wp-content/uploads/2017/05/fname/ -
等路径我希望代码能够显示页面中文件夹中的所有图像。
答案 0 :(得分:0)
请使用,
$upload_dir['basedir']
而不是
$upload_dir['baseurl']
因为baseurl
表示目录的URL,basedir
表示您的服务器路径。
更改您的代码,然后重试。希望它会奏效。
感谢。
答案 1 :(得分:0)
听起来你需要将标签显示为@jacktheking和@vel说。
通过修复<img/>
标记行来更新答案。请注意['basedir']
和['baseurl']
的使用。 URL用于设置src,而dir用于检索文件。 basename()
用于将文件名与完整路径分开。
$upload_dir = wp_upload_dir();
$base_url = $upload_dir['baseurl'] . '/2017/05/fname';
$logo_dir = ( $upload_dir['basedir'] . '/2017/05/fname' );
$images = glob( $logo_dir . '/*.png' );
foreach( $images as $image ) {
echo '<img src="' . $base_url . '/' . basename( $image ) . '" />';
}
答案 2 :(得分:0)
试试这个。
<?php
$upload_dir = wp_upload_dir();
$theme_root = $upload_dir['basedir'].'/2017/05/fname';
$files_array = glob("$theme_root/*");
foreach ($files_array as $key => $img):
$img =str_replace("/home/example.com/public_html/","https://example.com/",$img);
$get_icons = '<li><img src="'.$img.'" /></li>';
echo $get_icons;
endforeach;
?>
它将返回D:\xampp\htdocs\demowp/wp-content/uploads/2017/2017/05/fname/I-Love-University--150x150.jpg
您应该将D:\xampp\htdocs\demowp/
替换为http://yousite.com/