
本文介绍如何通过 wordpress 钩子函数移除 woocommerce 后台新订单通知邮件中的默认标题(heading),从而精简邮件内容、优化打印布局,使订单信息恰好适配单页打印。
本文介绍如何通过 wordpress 钩子函数移除 woocommerce 后台新订单通知邮件中的默认标题(heading),从而精简邮件内容、优化打印布局,使订单信息恰好适配单页打印。
在 WooCommerce 默认的管理员新订单邮件中,顶部会显示一个醒目的标题(如 “New order received”),该标题由 woocommerce_email_heading_new_order 过滤钩子控制。虽然它对用户友好,但在打印场景下(尤其是需严格控制页面尺寸时)往往造成额外空白或内容溢出,导致订单无法单页呈现。
要彻底移除该标题,推荐使用 add_filter 替换其返回值为空字符串。以下代码可直接添加至当前主题的 functions.php 文件(建议使用子主题)或专用功能插件中:
add_filter('woocommerce_email_heading_new_order', 'remove_new_order_email_heading', 10, 2);
function remove_new_order_email_heading($heading, $email) {
return '';
}
✅ 说明与注意事项:
- 优先级设为 10(默认值),参数数量明确为 2($heading 和 $email 对象),确保兼容性与稳定性;
- 不建议直接修改 WooCommerce 核心文件或模板,否则升级后将丢失改动;
- 若仅需隐藏(而非移除)标题,可用 CSS 方式(如在 woocommerce_email_styles 钩子中注入 .email-heading { display: none; }),但移除更彻底、减少 HTML 冗余;
- 修改后请务必在测试订单中验证邮件效果(可使用插件如 WP Mail Logging 查看实际发送内容);
- 如需对特定邮箱地址或订单状态做条件处理,可在函数内增加 if ( 'admin' === $email->id ) 或 $email->object->get_status() === 'pending' 等逻辑判断。
移除标题后,邮件正文将从订单详情区域直接开始,显著压缩垂直空间,配合合理设置的打印样式(如 @media print { body { font-size: 12px; margin: 0; padding: 8mm; } }),即可稳定实现单页精准打印。











