すべての WooCommerce メールの商品詳細にカスタム メタ フィールドを追加するこの機能があります。ただし、注文の支払いが完了した後にのみ表示する必要があります(これは単なる「完了」メールでも構いません)。
これを if ( $email->id == 'customer_completed_order' ) {} 内にネストできればいいのですが、最終的なコードは次のようになります。
if ( $email->id == 'customer_completed_order' ) {}
しかし、変更した後、動作しなくなりました。助言がありますか?
コードを試してみるとわかるように、$email は woocommerce_order_item_meta_start フックの一部ではありません。したがって、特定の WooCommerce 電子メール通知をターゲットにするには、回避策が必要です。
$email
woocommerce_order_item_meta_start
ステップ 1) WooCommerce メール通知に対してのみ機能する別のフックを介してグローバル変数を作成して追加します。
ステップ 2) フック woocommerce_order_item_meta_start で、グローバル変数を使用して、特定の WooCommerce メール通知をターゲットにできるようにします
コードを試してみるとわかるように、
$email
はwoocommerce_order_item_meta_start
フックの一部ではありません。したがって、特定の WooCommerce 電子メール通知をターゲットにするには、回避策が必要です。ステップ 1) WooCommerce メール通知に対してのみ機能する別のフックを介してグローバル変数を作成して追加します。
リーリーステップ 2) フック
リーリーwoocommerce_order_item_meta_start
で、グローバル変数を使用して、特定の WooCommerce メール通知をターゲットにできるようにします