如何修改WordPress/WooCommerce消息并添加超链接?代码场景问询
WooCommerce订单提示消息添加超链接/按钮的方法
核心结论
这类消息内容完全可以包含HTML代码,只要输出该消息的位置没有强制对内容做HTML转义处理(WooCommerce的订单重量限制提示场景默认不会做转义)。
具体修改方案
1. 改成普通超链接
把代码修改为以下形式,替换成你的联系页面URL即可:
public function change_message( $message ) { // 获取联系页面的URL(也可以直接硬编码,比如 'https://你的网站.com/contact/') $contact_url = get_permalink( get_page_by_path( 'contact' ) ); return sprintf( __( 'Your order is too heavy. Please <a href="%s">contact us</a> to get individual shipping cost', 'your-text-domain' ), esc_url( $contact_url ) ); }
2. 改成WooCommerce风格的按钮
如果想要按钮样式,可以给链接加上WooCommerce自带的按钮类,和系统风格保持统一:
public function change_message( $message ) { $contact_url = get_permalink( get_page_by_path( 'contact' ) ); return sprintf( __( 'Your order is too heavy. Please <a href="%s" class="button wc-forward">contact us</a> to get individual shipping cost', 'your-text-domain' ), esc_url( $contact_url ) ); }
注意事项
- 一定要用
esc_url()处理链接地址,避免安全风险; - 替换代码中的
your-text-domain为你的主题或插件的文本域,方便后续做翻译; - 如果输出消息的位置被开发者用
esc_html()包裹了,HTML会被转义成纯文本,这种情况需要找到输出代码去掉转义,或者用wp_kses()允许指定的HTML标签。
内容的提问来源于stack exchange,提问作者user801347
相关产品推荐
相关产品推荐

