根据运输方式自定义 Woocommerce 新订单电子邮件通知 [关闭]

2023-12-30

如何编辑 admin-new-order.php WooCommerce 模板以根据运输方式有条件地发送一些自定义客户详细信息?

例如(用于新订单电子邮件通知):

  • 如果订单运送方式是flat rate,我想在客户详细信息中添加一些自定义字段信息。
  • 如果订单运送方式不是flat rate,我不想显示自定义字段信息。

或者也许 function.php 中有一些片段可以用于此目的?


您可以使用挂接到任何此挂钩中的自定义函数(调整钩子优先级):

  • woocommerce_email_order_details
  • woocommerce_email_order_meta
  • woocommerce_email_customer_details

这是挂钩代码的示例(而不是覆盖模板):

add_action ('woocommerce_email_customer_details', 'custom_email_customer_details', 15, 4);
function custom_email_customer_details( $order, $sent_to_admin, $plain_text, $email ){

    // Only for "New Order" email notification
    if ( 'new_order' != $email->id ) return;

    // Only "Flat Rate" Shipping Method
    if ( $order->has_shipping_method('flat_rate') ){
        $order_id = $order->get_id(); // The Order ID

        // Test output
        echo "<p>Message: The Order ID is $order_id</p>";
        echo '<p>Custom field: '. get_post_meta( $order_id, '_recorded_sales', true ) .'</p>';
    }
}

这里的挂钩优先级是 15,因此它位于客户详细信息之后。

代码位于活动子主题(或主题)的 function.php 文件中或任何插件文件中。

这段代码已经过测试并且可以工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据运输方式自定义 Woocommerce 新订单电子邮件通知 [关闭] 的相关文章

  • 优雅地处理没有数据的 amcharts

    我想知道我的 dataProvider 是否为空 amCharts绘制时默认为null 我怎样才能动态地处理它 var chart AmCharts makeChart chartdiv theme none type serial dat
  • 如何解压 PHP/Lumen/Laravel 的 gzip 请求?

    我收到来自第三方的 gzip 编码文本请求 1mb 所以这是有道理的 我的测试路线 router gt post testgzip function Illuminate Http Request request decompressed
  • 如何检查PHP变量是否包含非数字?

    我只是想知道检查 PHP 变量中是否有非数字的方法以及它是否也检测字符之间的空格 需要确保我的表单字段中没有添加任何奇怪的内容 提前致谢 如果您的意思是您只想要一个包含数字的值 那么您可以使用ctype digit http php net
  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 生成大随机数 php [重复]

    这个问题在这里已经有答案了 我想使用 PHP 生成一个包含 75 个字符的数字 我到处寻找 但一无所获 除了这个 http dailycoding com tools RandomNumber aspx http dailycoding c
  • 如何在响应ajax codeigniter后停止执行其他控制器

    我想知道如何在响应输出 json 数据后停止执行函数和涉及的其他控制器 就我这里的情况而言 我只是打电话test 函数于dashboard控制器 In dashboard构造函数将执行MY Login library In MY Login
  • 如何从父类函数访问子类中定义的常量?

    我从 php net 看到这个例子 但 c MY CONST 仅在 5 3
  • 如何使用 php 下载/打印页面的特定部分

    我有一个 HTML 页面如下 Lorem Ipsum is simply dummy text of the printing and typesetting industry Lorem Ipsum has been the indust
  • 是否可以使用 PHP 重定向发送 POST 数据?

    更新 这不是重复的如何使用 PHP 发送 POST 请求 https stackoverflow com questions 5647461 how do i send a post request with php 那里的解决方案对我不起
  • 使用 preg_replace 仅替换第一个匹配项

    我有一个结构类似于以下的字符串 aba aaa cba sbd dga gad aaa cbz 该字符串每次都可能有点不同 因为它来自外部源 我只想替换第一次出现的 aaa 但其他人则不然 是否可以 可选的第四个参数预替换 http php
  • preg_match_all 查询仅显示有问题的外部组

    我无法弄清楚如何只显示 preg 查询的外部组级别 我会给你一个例子 preg match all start end input matches 这个输入start1 start2 2end 1end产生这个输出start1 start2
  • PHP 在输入流中使用 fwrite 和 fread

    我正在寻找将 PHP 输入流的内容写入磁盘的最有效方法 而不使用授予 PHP 脚本的大量内存 例如 如果可以上传的最大文件大小为 1 GB 但 PHP 只有 32 MB 内存 define MAX FILE LEN 1073741824 1
  • 在 PHP 中撤销 Google 访问令牌

    正如标题所示 我想以编程方式撤销授予的访问令牌 即在 PHP 中 我发现这个他们的网站 https developers google com identity protocols OAuth2WebServer tokenrevoke 但
  • PHP 脚本可以在终端中运行,但不能在浏览器中运行

    我正在尝试执行exec命令 但我遇到了问题 当我运行以下代码时 当我通过浏览器运行它时它不起作用 但如果我把输出 str将其复制并粘贴到终端中 它工作得很好 造成这种情况的原因是什么 我该如何解决 目前我正在运行localhost php
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • 通过 $_SESSION 从一个脚本发送到另一个脚本期间数据丢失

    我正在尝试将一个充满属性的对象从一个 PHP 发送到另一个 PHP SESSION object obj where obj是一个用 foreach 循环指定的对象 foreach array of objects as obj SESSI
  • PHP 中只保留数组的前 N ​​个元素? [复制]

    这个问题在这里已经有答案了 有没有办法只保留数组的前 N 个 例如 10 个 元素 我知道有array pop 但是有没有更好 更优雅的方法呢 您可以使用array slice http php net array slice or arr
  • php 错误 fopen(): 文件名不能为空

    发送带有附件代码的电子邮件工作正常 最近我们已将文件传输到另一个托管服务器 idk 发生了什么 它显示以下错误 警告 fopen 第 106 行 home hugerecruitmetnt public html validatecva p
  • CURL 中的 data-urlencode 是什么意思?

    我搜索了很多个小时试图弄清楚 php curl 中的 data urlencode 是什么 我尝试过这个 但我认为这是不对的 xmlpost object1 file https www lob com goblue pdf 在文档中是 d
  • 一次播种多行 laravel 5

    我目前正在尝试为我的用户表播种 如果我像这样尝试 2 行 就会失败 如果我只使用单个数组而不是 users 数组内的 2 个数组来创建一些假数据 那么效果很好 我做错了什么 正确的方法是什么 class UserTableSeeder ex

随机推荐

  • 为特定子域设置会话cookie

    我有一个具有多个子域的网站 它们共享一个唯一的 PHP 会话 cookie 来识别每个用户 我通过简单地添加来做到这一点session cookie domain mydomain com 但是我想知道是否可以指定多个子域 以便 cooki
  • Javascript 增量不起作用

    好吧 我不知道到底什么才是一个好的标题 因为这是一个最特殊的情况 或者我异常愚蠢 这就是我想做的 创建一个简单的
  • 数组元素的重复副本:MATLAB 中的游程解码

    我正在尝试使用 值 数组和 计数器 数组将多个值插入到数组中 例如 如果 a 1 3 2 5 b 2 2 1 3 我想要某个函数的输出 c somefunction a b to be c 1 1 3 3 2 5 5 5 其中 a 1 重复
  • 在 python/bash 脚本中编写 Git 挂钩 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我最近需要编写 git hooks 以便所有提交都引用特定的票证 我希望有一个地方可以开始学习 Pro
  • C# 泛型接口协方差

    我有一个界面IControl
  • 自加入条件查询

    所以我有一个名为 用户 的表 其字段为 userId userName 主管 ID 我想获取特定用户的主管的用户名 CriteriaBuilder criteriaBuilder em getCriteriaBuilder Criteria
  • 如何使用 React Intl 动态添加语言环境数据?

    我正在使用 React intl 来实现 UI Util 库的国际化 该库有一个名为 i18n 的文件夹 其中我放置了不同区域设置的 json 文件 如果该库的用户想要添加对其他区域设置的支持 他 她可以放置带有相应区域设置的键 值对的附加
  • VS 2012 RC 中新增的 HTML 文档类型有哪些?

    我刚刚安装了 VS 2012 RC 在 HTML 工具栏下拉列表中它有很多新选项 文档类型 HTML5 HTML5 XHTML5 这两个 HTML5 选项有什么区别 我认为 HTML5 的建议是不要指定 DOCTYPE 所以第一个选项有点像
  • VBS 网站登录脚本 - “需要对象”错误

    我正在尝试编写我的第一个网站登录脚本 但总是在第 9 行位置 9 处收到错误消息 需要对象 getElementByID 800A01A8 这是我的实际工作站点的代码 Call Main Function Main Set IE WScri
  • ui-router 用于仅具有特定值的路由

    我正在尝试为具有以下结构的多个独特登陆页面构建一条路线 domain com state city category 如何定义路线 以便州 城市和类别只能是预定义值之一 又名 state ca ma ak az ar i city los
  • java并发:多个写入器,一个读取器

    我需要在我的软件中收集一些统计数据 并且我正在努力使其快速且正确 这对我来说并不容易 首先是我到目前为止的代码 有两个类 一个 StatsService 和一个 StatsHarvester public class StatsServic
  • 切换 增强指针精度

    我们基本上是在创建一个控制面板小程序 我们需要在鼠标属性中切换 增强指针精度 为此 我们需要调用SystemParametersInfo with SPI GETMOUSE 它有一个包含 3 个元素的数组作为其第三个参数 我是 PInvok
  • 在正则表达式中匹配小时/分钟/秒 - 更好的方法吗?

    所以我需要从这样的条目中获取小时 分钟和秒 04 43 12 9 43 12 1 00 01 04 59 09 前两个是小时 分钟和秒 接下来是分钟和秒 最后两秒只是几秒钟 我想出了这个正则表达式 它有效 A
  • 可重复使用的方式,允许一个帐户一次由一个人使用

    我创建了一项功能 可以防止一个用户名同时多次登录 并在操作中调用它 如下所示 int userId int WebSecurity CurrentUserId if this Session SessionID dba getSession
  • Java XPathFactory 线程安全

    javax xml XPathFactory newInstance 是线程安全的吗 我这么问是因为我发现文档对此含糊不清 JDK 5 文档 http docs oracle com javase 1 5 0 docs api javax
  • Ruby on Rails Bootstrap Glyphicons 不工作

    我已将引导程序添加到我的网站 这是我正在使用的结构 我无法删除 bootstrap css 文件 因为我根据自己的喜好修改了它 gt app gt gt assets gt gt gt fonts gt gt gt gt 4 glypico
  • 如何验证函数句柄作为输入参数?

    我有一个类 它有一个函数句柄作为其之一properties classdef MyClass properties hfun function handle end methods function obj Myclass hfun PRO
  • 单击按钮标题或按钮图标后按钮事件不起作用

    我创建了一个带有标签和 向下插入符号 图标的下拉按钮 当下拉菜单打开时 下插入符 图标应该向上旋转 并且这是有效的 但是 如果我单击按钮标题或 下插入符 图标 此事件将不起作用 document ready function dropdow
  • 如何(我应该)模拟 DocumentClient 进行 DocumentDb 单元测试?

    从新的 CosmosDb 模拟器中 我得到了一个存储库来执行基本的 documentdb 操作 该存储库被注入到其他类中 我想对基本查询进行单元测试 public class DocumentDBRepository
  • 根据运输方式自定义 Woocommerce 新订单电子邮件通知 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 如何编辑 admin new order php WooCommerce 模板以根据运输方式有条件地发送一些自定义客户详细信息 例如 用于新