当前位置: 首页 > 知识库问答 >
问题:

如何在函数中获取商业订单的产品标识。php

吴鸿彩
2023-03-14

我试图创建一个IF条件与product_id从order_id,当一个新的订单被放置。

我试着这样做:

add_action('woocommerce_new_order', 'wc_send_order_to_mypage');
function wc_send_order_to_mypage($order_id)
{
    $order = wc_get_order( $order_id );

    foreach ($order->get_items() as $item_key => $item )
    {
        $product_id   = $item->get_product_id(); 

        if ( $product_id == 29 ) {
            $url = "https://www.abc.de";
        }

    }
    //do something with $url
}

但是每次当我想下订单时,WooCommerce都会给我错误消息“内部服务器错误”。

我试图使用这个答案的代码,但不知何故它不起作用:如何获得WooCommerce订单详细信息

什么东西在这里不起作用?非常感谢你的帮助。

顺致敬意,

托马斯

共有1个答案

韦叶秋
2023-03-14

这可以很容易地通过以下方式完成。代码行之间包含注释和解释。

function wc_send_order_to_mypage( $order_id ) {
    // Get order
    $order = wc_get_order( $order_id );

    // Get items
    $items = $order->get_items();

    // Loop trough
    foreach ( $items as $item ) {
        // Get product
        $product = wc_get_product( $item['product_id'] );

        // Get type
        $product_type = $product->get_type();

        // Get name
        $product_name = $product->get_name();

        // Get id
        $product_id = $product->get_id();
        // etc.
        // etc.

        // Compare 
        if ( $product_id == 29 ) {
            $url = "https://www.abc.de";
        }    
    }
}
add_action( 'woocommerce_new_order', 'wc_send_order_to_mypage', 10, 1 );
 类似资料:
  • 我想按价格、日期和发布年份等项目对产品进行排序。在发布年份的情况下,我做了一个分类法=发布年份 但它是不工作.我怎么能改变代码可能排序按发布年份顺序?

  • 从以下行代码输入: 如何从订单id获取WooCommerce订单详细信息?

  • 问题内容: 好的,继续阅读WooCommerce 3.0+中的更改,似乎您无法再直接访问此类,因此我认为需要更改此代码,因为它会吐出一个错误: 但是,令人尴尬的是,我不确定如何更改此代码以在此类的最新版本中使用正确的新getter和setter函数,而该版本不再具有构造。如何正确执行此操作?我没有看到与上述相同的获取订单项的功能。 也许我在这里忽略了什么? 问题答案: 如果使用该 方法,则将获得

  • OpenResty Inc. 公司为 OpenResty 提供多款商业产品。这些产品本身也 主要由OpenResty来驱动。 OpenResty XRay OpenResty XRay是新一代的应用性能管理(APM)产品,为OpenResty和其他开源软件使用,100% 使用非侵入式的动态跟踪技术。 它可以自动监控、发现、排除故障,并为广泛的用户提供修复建议。 在您运行的OpenResty应用程序

  • 我想得到10产品从一个类别在WooCommerce 例如,对于获取帖子类别的最新帖子,我使用以下代码 我想要一个代码,像这样的商业产品

  • 问题内容: 我正在寻找一个代码片段,以获取今天每种产品的总销售额,因此可以在我的主题functions.php文件中使用它。 输出应如下所示(每个项目的总销售量): 问题答案: 这可以通过以下非常简单的SQL查询和foreach循环来完成。 这将为您提供过去24小时内按产品计数的订单的产品列表 (以及产品变体,但没有父变量产品) : 经过测试和工作。 如果要改为根据“今天”日期获得总数,则将在此行