让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

相关推荐
李纲明21 小时前
WordPress 预发/Staging 怎么搭才不污染正式站:克隆、Search Replace、缓存与邮件
wordpress·网站运维·staging·预发环境·wp-cli
李纲明3 天前
WordPress 安全加固基线:更新策略、文件权限、登录面收缩和备份验证(含回滚注意)
运维·安全·php·wordpress
李纲明3 天前
WordPress 表单提交成功、线索却没到:SMTP、反垃圾与缓存/CDN 冲突怎么拆开查
cdn·wordpress·smtp·表单·网站运维
李纲明6 天前
WordPress 站点变慢:按 TTFB → 缓存 → 查询 → 前端 分层排查(含配置注意)
前端·缓存·性能优化·wordpress·后端开发
程序员老赵6 天前
Docker 部署 WordPress:轻松搭建开源内容管理平台
docker·开源·wordpress
object not found15 天前
WooCommerce 接入 KPay 后订单完成页不显示订单信息:returnUrl 动态参数问题解决
前端·wordpress·独立站支付
皓月盈江18 天前
WordPress博客迁移到Hexo静态博客教程
linux·服务器·hexo·wordpress·博客迁移·静态博客
boke112百科1 个月前
WordPress经典编辑器【插入至文章】按钮怎么调到右上角?
编辑器·wordpress·wordpress教程·经典编辑器
Rainy Blue8831 个月前
从零搭建个人动态博客
博客·wordpress
hui-梦苑1 个月前
[PHP]轻量主题函数WordPress 集成 KaTeX 数学公式渲染
开发语言·php·wordpress·katex