wordpress 中的短代码(shortcode)默认不会在 html 属性(如 `
在 WordPress 主题模板或自定义 PHP 片段中,短代码(如 [cmruncode name='dash'])仅在支持短代码上下文的区域(例如文章内容、小工具或通过 do_shortcode() 显式调用的位置)才会被解析为真实输出。而
因此,以下写法无效:
浏览器会尝试加载字面量 "[cmruncode name='dash']" 作为 URL,导致 404 或空白 iframe。
✅ 正确做法是:在 PHP 环境中使用 do_shortcode() 函数提前解析短代码,并将结果拼入 src 属性:
? 关键说明与最佳实践:
总结:短代码不是“魔法字符串”,而是需由 PHP 主动触发的逻辑单元。在 iframe、script、form action 等 HTML 属性中动态插入短代码结果时,务必通过 do_shortcode() + esc_url() 组合实现安全、可靠渲染。