Updated
您应该需要在感谢“已收到订单”页面中获取 cookie 值作为自定义订单元数据:
add_action( 'woocommerce_thankyou', 'thankyou_grab_cookie_as_meta_data', 10, 1 );
function thankyou_grab_cookie_as_meta_data( $order_id ){
if( ! $order_id ){
return;
}
if( isset($_COOKIE["ticketidno"]) && ! get_post_meta( $order_id, '_cookie_ticketidno', true ) ) {
update_post_meta( $order_id, '_cookie_ticketidno', esc_attr($_COOKIE["ticketidno"]) );
}
}
代码位于活动子主题(或活动主题)的 function.php 文件中。它应该有效。
您将能够使用以下方法获取此抓取的 cookie 值:
- 来自订单 ID:
$cookie = get_post_meta( $order_id, '_cookie_ticketidno', true );
- 从订单对象:
$order->get_meta( '_cookie_ticketidno' ); // (on Woocommerce 3+)
在电子邮件通知中显示:
// Email notifications display
add_action( 'woocommerce_email_order_details', 'add_order_instruction_email', 5, 4 );
function add_order_instruction_email( $order, $sent_to_admin, $plain_text, $email ) {
if( $value = $order->get_meta('_cookie_ticketidno') )
echo '<p class="ticket-id">' .__('Ticket Id Number: ') . $value . '</p>';
}
代码位于活动子主题(或活动主题)的 function.php 文件中。
在“已收到订单”页面上显示(谢谢):
// On "Order received" page (on start)
add_filter( 'woocommerce_thankyou_order_received_text', 'thankyou_custom_order_received_text', 10, 2 );
function thankyou_custom_order_received_text( $text, $order ) {
if ( $value = $order->get_meta('_cookie_ticketidno') ) {
$text .= '<br><div class="ticket-id"><p>' . __('Ticket Id Number: ') . $value . '</p></div>' ;
}
return $text;
}
代码位于活动子主题(或活动主题)的 function.php 文件中。
对于短信 - 由于这需要订单 ID,请尝试以下操作,但无需任何保证:
case "solutions_infini":
$respuesta = wp_remote_get( "http://api-global.solutionsinfini.com/v3/?api_key=" . $apg_sms_settings['clave_solutions_infini'] . "&method=sms" . "&to=" . $telefono . "&sender=" . $apg_sms_settings['identificador_solutions_infini'] . "&message=" . "Thanks for Registering in ". $_SESSION['post_title'] . " your Registration ID no is THR". get_post_meta( $_SESSION['ID'], '_cookie_ticketidno', true ) . apg_sms_codifica_el_mensaje( $mensaje ));
break;
代码应该放在插件中的provedores.php 文件中,只需在代码中替换:
$_COOKIE["ticketidno"]
by:
get_post_meta( $_SESSION['ID'], '_cookie_ticketidno', true )
where $_SESSION['ID']
(我想并且我希望)应该订单 ID.