• After WooCommerce version 3 Order properties should not be accessed directly. so many Order properties used directly in plugin. Please update your code.
    for ex. $order->id not working
    like replace $order->get_id();

Viewing 2 replies - 1 through 2 (of 2 total)
  • Hi there,

    same here.

    Currently following lines are affected:

    XXX@XXX /v/w/c/c/w/w/wp-content> grep '$order->id' * -n -R
    plugins/aftership-woocommerce-tracking/aftership.php:564:                $this->display_tracking_info($order->id, true);
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:123:                  'id' => $order->id,
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:255://                $result[substr($id,10)] = get_post_meta($order->id, '_' . $field['id'], true);
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:260:                          'tracking_provider' => get_post_meta($order->id, '_aftership_tracking_provider', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:261:                          'tracking_number' => get_post_meta($order->id, '_aftership_tracking_number', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:262:                          'tracking_ship_date' => get_post_meta($order->id, '_aftership_tracking_shipdate', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:263:                          'tracking_postal_code' => get_post_meta($order->id, '_aftership_tracking_postal', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:264:                          'tracking_account_number' => get_post_meta($order->id, '_aftership_tracking_account', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:265:                'tracking_key' => get_post_meta($order->id, '_aftership_tracking_key', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:266:                'tracking_destination_country' => get_post_meta($order->id, '_aftership_tracking_destination_country', true),
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:271:                  $tn = get_post_meta($order->id, '_tracking_number', true);
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:275:                                  'tracking_number' => get_post_meta($order->id, '_wc_shipment_tracking_items', true)[0]['tracking_number'],
    plugins/aftership-woocommerce-tracking/api/class-aftership-api-orders.php:276:                                  'tracking_provider' => get_post_meta($order->id, '_wc_shipment_tracking_items', true)[0]['custom_tracking_provider'],

    Having the same problem. Here is the error log:

    [22-Aug-2017 14:40:25 UTC] id was called incorrectly. Order properties should not be accessed directly. Backtrace: require(‘wp-blog-header.php’), require_once(‘wp-includes/template-loader.php’), do_action(‘template_redirect’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action(‘wc_ajax_checkout’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_payment, WC_Gateway_emt->process_payment, WC_Order->update_status, WC_Order->save, WC_Order->status_transition, do_action(‘woocommerce_order_status_pending_to_on-hold’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_New_Order->trigger, WC_Email->get_content, WC_Email_New_Order->get_content_html, wc_get_template_html, wc_get_template, include(‘/plugins/woocommerce/templates/emails/admin-new-order.php’), do_action(‘woocommerce_email_order_details’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include(‘/plugins/woocommerce/templates/emails/email-order-details.php’), do_action(‘woocommerce_email_before_order_table’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, AfterShip->email_display, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0.
    [22-Aug-2017 14:40:25 UTC] id was called incorrectly. Order properties should not be accessed directly. Backtrace: require(‘wp-blog-header.php’), require_once(‘wp-includes/template-loader.php’), do_action(‘template_redirect’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action(‘wc_ajax_checkout’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_payment, WC_Gateway_emt->process_payment, WC_Order->update_status, WC_Order->save, WC_Order->status_transition, do_action(‘woocommerce_order_status_pending_to_on-hold’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_Customer_On_Hold_Order->trigger, WC_Email->get_content, WC_Email_Customer_On_Hold_Order->get_content_html, wc_get_template_html, wc_get_template, include(‘/plugins/woocommerce/templates/emails/customer-on-hold-order.php’), do_action(‘woocommerce_email_order_details’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include(‘/plugins/woocommerce/templates/emails/email-order-details.php’), do_action(‘woocommerce_email_before_order_table’), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, AfterShip->email_display, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0.

Viewing 2 replies - 1 through 2 (of 2 total)
  • The topic ‘Order properties should not be accessed directly’ is closed to new replies.