You need to enable JavaScript to run this app. WordPress中如何用PHP判断周六周日以实现周末专属消息输出?
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中如何用PHP判断周六周日以实现周末专属消息输出?

WordPress 站点按周末条件输出指定内容的PHP实现方案
  • 核心判断逻辑和你当前用的JS规则完全对齐,PHP 内置时间函数date('w')返回值的定义和JS的getDay()完全一致:返回数字0代表周日,6代表周六,1-5对应周一到周五。
  • 相比纯JS前端渲染的方案,服务端PHP输出的内容不会出现脚本未加载完成时的内容闪烁、脚本被浏览器拦截时直接失效的问题,对站点SEO更友好。

基础判断实现

直接在需要输出内容的模板位置(比如主题页头、侧边栏、页面模板文件)插入以下代码即可完成判断:

// 获取WordPress站点当前配置时区下的星期值
$week_day = intval( date('w') );
// 匹配周六(6)、周日(0)的条件
if ( $week_day === 0 || $week_day === 6 ) {
    // 替换为你需要在周末展示的指定消息
    echo '<div class="notice">周末好,本站周末仅保留基础功能运行</div>';
}

注意事项

  • 上述代码自动匹配WordPress后台「设置-常规」中配置的站点时区,不需要手动调整时区参数,只要后台时区设置正确,就不会出现时间偏差导致的判断错误。
  • 避坑提醒:很多教程容易混淆PHP date() 函数的两个星期类参数,写判断时要注意对应规则:
    • date('w'):返回0(周日)-6(周六),和JS的getDay()规则完全匹配,适合对接你已经调试好的JS判断逻辑
    • date('N'):返回1(周一)-7(周日),是ISO标准格式,用这个参数写判断时要调整匹配条件,不然会出现判断错位
  • 如果需要更灵活的调用方式,可以把判断逻辑封装成短代码,加到主题的functions.php文件中,实现任意页面插入即可触发:
add_shortcode( 'show_weekend_notice', function() {
    $week_day = intval( date('w') );
    if ( $week_day === 0 || $week_day === 6 ) {
        // 短代码触发时返回周末的指定消息
        return '<p>周末专属提示内容</p>';
    }
    // 非周末返回空值,不输出任何内容
    return '';
});

封装完成后,在任意文章、页面的编辑器中插入[show_weekend_notice],就可以自动完成周末判断和内容输出,不需要反复修改主题模板文件。

补充:你之前调试好的JS方案逻辑和PHP判断规则完全对齐,切换实现方式时不需要调整原有的星期匹配逻辑,只是把内容渲染从前端迁移到服务端,不依赖用户端的脚本执行权限,稳定性更强。

内容的提问来源于stack exchange,提问作者robert0

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.30 20:54:08