我想提一下,虽然我使用的是一些特定于WordPress的PHP,但答案与Wordpress没有任何关系。我刚刚添加它以提供完整的代码源。
我写了一个“foreach循环”来“回显”我在Wordpress媒体库中上传的所有图片。
但是我需要能够选择某个文件夹中的所有图像。 (即/ thisfolder)。
我只是不知道怎么说:
“如果$ imageURL中的任何值以: http://localhost/testsite/wp-content/uploads/thisfolder/“然后包括 他们,否则不要。“
我尝试使用substr()来过滤它,但我似乎找不到让它工作的方法。有什么想法吗?
CODE:
<?php
$query_images_args = array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'post_status' => 'inherit',
'posts_per_page' => - 1,
);
$query_images = new WP_Query( $query_images_args );
$images = array();
foreach ( $query_images->posts as $image ) {
$images[] = wp_get_attachment_url( $image->ID );
}
for($i = 0; $i < count($images); $i++) {
$imageURL = $images[$i];
echo $imageURL . '<br /><br />';
}
?>
结果:
http://localhost/testsite/wp-content/uploads/thisfolder/01.jpg
http://localhost/testsite/wp-content/uploads/thisfolder/02.jpg
http://localhost/testsite/wp-content/uploads/2016/01/03.jpg
http://localhost/testsite/wp-content/uploads/2016/01/04.jpg
我尝试添加:
$URLlength = 'http://localhost/testsite/wp-content/uploads/thisfolder';
$akumalURL = substr( $URLlength, 0, strlen($URLlength)) === $URLlength;
if (in_array($akumalURL, $imageURL)) {
echo 'sucess!';
}
else {
echo 'bummer.....';
}
答案 0 :(得分:0)
我会做像
这样的事情$URLlength = 'http://localhost/testsite/wp-content/uploads/thisfolder';
for($i = 0; $i < count($images); $i++) {$imageURL = $images[$i];
if(strpos($imageURL, $URLlength) === 0){
echo $imageURL . '<br /><br />';
}
}
答案 1 :(得分:0)
你可以这样做,
for($i = 0; $i < count($images); $i++) {
$imageURL = $images[$i];
if ( strpos( $imageURL, 'thisfolder') !== false ) {
echo $imageURL . '<br /><br />';
}
}