首页 文章

woocommerce - 内部服务器错误

提问于
浏览
0

我用wordpress和woocommerce Build 了一个网站(www.jescesole.eu) . 由于该网站在德国销售,我不得不安装一个额外的插件,woocommerce德国化(与polylang一起,以查看德语和意大利语的内容)在最近的几天我升级了wp和所有插件但是当客户提交订单时,出现内部服务器错误消息 . 我读了服务器错误日志并报告了一条很长的错误消息:

星期四,2017年4月13日21:53:37 GMT [错误] [客户端87.13.188.180] - www.jescesole.eu - AH01215:payment_method调用不正确 . 不应直接访问订单属性 . 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_COD-> process_payment,WC_Order-> update_status,WC_Order- >保存,WC_Order-> status_transition,do_action( 'woocommerce_order_status_pending_to_processing'),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_GZD_Email_Customer_Paid_For_Order->触发,WC_Email-> get_content,WC_GZD_Email_Customer_Paid_For_Order-> get_content_html,wc_get_template_html,wc_get_template,include('/ plugins / woocommerce-germanized / templates / emails / customer-paid-for-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,Hyyan \ WPI \ Gateways \ GatewayBACS-> email_instructions,WC_Abstract_Legacy_Order - > __ get,wc_doing_it_wrong . 此消息是在3.0版中添加的:/ php-wrapper / php-cgi,referer http://www.jescesole.eu/it/checkout/

怎么会发生?可能是某些插件彼此不兼容或与主题不兼容?提前

2 回答

  • -1

    WooCommerce 3.0修改了他们的代码以限制对属性的直接访问,您可以像下面那样更改代码 .

    $OrderID= ( WC()->version < '2.7.0' ) ? $order->id : $order->get_id();
        $shipping_country   = (  WC()->version < '2.7.0' ) ? $order->shipping_country : $order->get_shipping_country();
    

    或者将您的插件更新为WC3兼容 .

    $ order-> property:$ order-> get_ property();

  • 0

    我有同样的问题,发现导致错误的“Hyyan WooCommerce Polylang Integration”插件 . 禁用它,内部服务器错误消失 . Woocommerce Germanized与Polylang完美配合 . 这个插头不需要(任何更多) .

相关问题