由于缺乏声誉,我无法发表评论,因此我将解决rudtek提到的问题。就我个人而言,我从来没有遇到过禁用PHP的rand()函数的主机,但如果有这样一个糟糕的主机,您可以选择一种更有效的方式。您可以做的是获取所有图像id,并从可用列表中选择一个随机id。这样可以大大减少内存占用和cpu使用。请参见下面的代码示例
// get all image ids available
$image_ids = get_posts(
array(
\'post_type\' => \'attachment\',
\'post_mime_type\' => \'image\',
\'post_status\' => \'inherit\',
\'posts_per_page\' => -1,
\'fields\' => \'ids\',
)
);
// based on the number of image_ids retrieved, generate a random number within bounds.
$num_of_images = count($image_ids);
$random_index = rand(0, $num_of_images);
$random_image_id = $image_ids[$random_index];
// now that we have a random_image_id, lets fetch the image itself.
$image = get_post($random_image_id);
// you can do whatever you want with $image now.
上面的代码应该没有任何问题,但如果您希望显示所选的随机图像,则必须进一步处理。如果您不需要必要的编程技能才能使其正常工作,我可能会尽快编写一个低占用空间的解决方案。
或者,应该有插件来做你想做的事情,只是它们可能确实太臃肿了。还请注意,如果库中有数千个或更多图像,则性能可能会受到严重影响。