让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

相关推荐
e6zzseo4 天前
wordpress独立站seo怎么做才有效
seo·wordpress·独立站·内容优化·外链建设
Web极客码6 天前
如何让用户订阅WordPress评论?提升用户互动的有效策略
运维·服务器·wordpress
fobwebs6 天前
Wordpress Xstore 主题安装Elementor Pro 后找不到某些Elements 组件的解决方法
element·wordpress·form·xstore·pro elements·elementor pro
代龙涛7 天前
WordPress sidebar.php 侧边栏开发教程
开发语言·php·wordpress
代龙涛8 天前
WordPress header.php 与 footer.php 模板结构详解
开发语言·php·wordpress
Web极客码13 天前
如何在WordPress中添加动态内容
服务器·前端·wordpress
tommyjiatong16 天前
WordPress电商展示站服务器迁移指南
服务器·数据库·wordpress
IT大白鼠17 天前
WordPress组合漏洞wp2shell技术分析报告
wordpress·安全漏洞·wp2shell 漏洞
Markk20 天前
Wordpress及第三方支持工具docker容器化搭建
wordpress
Web极客码24 天前
WordPress SEO优化:提升网站排名的13个关键步骤
服务器·seo·wordpress