我还没有看到这个问题,所以如果是,有人可以重新指导我吗?
我在为使用图像库中的随机图像的 WordPress 主题创建全屏背景时遇到问题。我想写一个可以在多个站点上使用的PHP函数,所以我不能简单地在代码中使用直接路径。它还需要以仅提取上传到该站点的图像的方式在 MultiSite 上工作。这是我正在使用的代码:
我的背景 div 的 HTML
<div id="background" class="background" style="background-image:url(<?php displayBackground();?>);">
</div>
PHP随机化我的图像文件夹
<? php
function displayBackground()
{
$uploads = wp_upload_dir();
$img_dir = ( $uploads['baseurl'] . $uploads['subdir'] );
$cnt = 0;
$bgArray= array();
/*if we can load the directory*/
if ($handle = opendir($img_dir)) {
/* Loop through the directory here */
while (false !== ($entry = readdir($handle))) {
$pathToFile = $img_dir.$entry;
if(is_file($pathToFile)) //if the files exists
{
//make sure the file is an image...there might be a better way to do this
if(getimagesize($pathToFile)!=FALSE)
{
//add it to the array
$bgArray[$cnt]= $pathToFile;
$cnt = $cnt+1;
}
}
}
//create a random number, then use the image whos key matches the number
$myRand = rand(0,($cnt-1));
$val = $bgArray[$myRand];
}
closedir($handle);
echo('"'.$val.'"');
}
我知道我的 CSS 标记是正确的,因为如果我给 DIV 一个固定的图像位置,我会得到一个全屏图像。谁能告诉我该怎么做才能解决它?