You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中PHP短码输出位置错误,需在下拉菜单显示下周日

解决WordPress短码输出位置错误的问题

你遇到的这个问题其实很常见——短码内容跑到页面左上角,核心原因是WordPress短码函数不能直接用echo输出内容,必须通过return返回结果。

问题根源

当你在短码函数里使用echo时,内容会直接输出到PHP的输出缓冲区,这个操作发生在WordPress构建页面内容(包括菜单)的流程之前,所以内容会被提前渲染到页面最顶部,而不是短码所在的目标位置。

修正后的短码代码

把你的函数改成用return代替echo,就能解决位置偏移的问题:

function WebinarDaySunday() { 
    return date("j, M", strtotime("next sunday")); 
} 
add_shortcode('webinardaysunday', 'WebinarDaySunday');

额外注意:让菜单支持短码

如果修改后菜单里只显示短码文本[webinardaysunday]而不是日期,那是因为很多WordPress主题默认不会解析菜单中的短码。你可以添加下面这段代码到主题的functions.php文件中,让菜单能够识别并处理短码:

add_filter('nav_menu_item_title', 'do_shortcode');

完成以上修改后,把[webinardaysunday]插入到下拉菜单的自定义菜单项中,当周的下周日日期就会正确显示在你预期的菜单位置了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:50:21