让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

相关推荐
VIP_CQCRE2 天前
用 Ace Data Cloud 自动发布 WordPress 文章:把 AI 写作变成可积累的 SEO 内容资产
ai·api·seo·wordpress·acedatacloud
VIP_CQCRE8 天前
用 Ace Data Cloud 自动发布 WordPress 文章:把 SEO 内容站变成长期增长资产
ai·自动化·seo·wordpress·acedatacloud
2601_9657984712 天前
Renovate Theme Setup: Fast Contractor & Construction Site Architecture
theme·wordpress
2601_9657984714 天前
Salient Theme Setup Guide for Fast Creative WordPress Sites
数据库·web3·php·wordpress
2601_9657984716 天前
Boutique Business Consulting WordPress Architecture & SEO Setup
android·theme·wordpress
2601_9657984717 天前
Plastic Surgery Clinic Web Setup: Deploying Rejuvita WordPress
php·theme·wordpress
2601_9657984717 天前
Contractor Web Setup: Deploying Bathrooms & Kitchens Theme Fast
前端·web3·php·wordpress
e6zzseo24 天前
wordpress独立站seo怎么做才有效
seo·wordpress·独立站·内容优化·外链建设
Web极客码1 个月前
如何让用户订阅WordPress评论?提升用户互动的有效策略
运维·服务器·wordpress
fobwebs1 个月前
Wordpress Xstore 主题安装Elementor Pro 后找不到某些Elements 组件的解决方法
element·wordpress·form·xstore·pro elements·elementor pro