让wordpress随机调用一张指定文件夹中的图片

扫描你给的目录里所有 jpg|jpeg|png|gif 图片;

随机挑一张返回完整<img>标签并回显。

复制代码
<?php
// 目录硬编码,末尾别漏 "/"
$dir = get_stylesheet_directory() . '/images/jianzhanpress/pic/';

// 允许的后缀
$ext = ['jpg', 'jpeg', 'png', 'gif'];

// 把目录里所有图片读出来
$imgs = array_filter(
    (array) scandir($dir),
    fn($f) => in_array(strtolower(pathinfo($f, PATHINFO_EXTENSION)), $ext)
);

if ($imgs) {
    // 随机取一张
    $file = $imgs[array_rand($imgs)];

    // 拼成可访问的 URL(注意用 get_stylesheet_directory_uri)
    $url = get_stylesheet_directory_uri() . '/images/pic/' . $file;

    // 直接输出,也可以 return 给短码/区块用
    echo '<img src="' . esc_url($url) . '" alt="random" />';
}
?>

用法示例

扔到首页模板:把上面代码粘到 front-page.php 或 index.php 你想出现的位置即可。

做成短码:包一层 add_shortcode('random_pic', fn() => ob_start() && 上面代码 && return ob_get_clean());

区块/HTML 小工具:先 add_shortcode,再到小工具里写 [random_pic]。

性能提示

目录里图片不多时 scandir 没压力;若图片上百张可换成一次性生成 json 缓存,或使用 transient 定时刷新。

原文

http://wordpress.zj.cn/jiaocheng/50.html

相关推荐
WordPress学习笔记14 小时前
XX主题XXTheme
wordpress
syjy21 天前
WPBakery Page Builder 使用教程(含下载)
wordpress·wordpress插件
syjy22 天前
(含下载)BeTheme WordPress主题使用教程
前端·wordpress·wordpress建站
He1955012 天前
Elementor 自定义块开发
wordpress·elementor·elementor块开发
He1955014 天前
wordpress搭建块
开发语言·wordpress·古腾堡·wordpress块
WordPress学习笔记5 天前
wordpress独立站主题
wordpress·wordpress主题
WordPress学习笔记6 天前
三级产品分类折叠展示wordpress外贸主题
wordpress
syjy26 天前
(含下载)Slider Revolution WordPress插件使用教程
wordpress·wordpress插件
2601_954023666 天前
Review and Installation Guide: Meminz - Download Software Landing Page Theme
数据库·seo·wordpress·gpl
2601_954023667 天前
Architecting for Tomorrow: The 2025 High-Performance Stack for Agencies
java·前端·python·seo·wordpress·gpl