Собственно суть вопроса. На отправку формы навешан хук(код ниже) . При отправке формы бесконечно крутится прелоадер и форма не выдает ни успешного, ни ошибочнго сообщения. При этом все что надо делается. Уходят 2 письма и создается купон. Писал код на тестовом серваке - все работало. Перенес в продакшн - случилась такая фигня. Вот код хука
add_action( 'wpcf7_mail_sent', 'generate_coupon' );
function generate_coupon( $contact_form ) {
$title = $contact_form->title( );
$submission = WPCF7_Submission::get_instance();
if ( $submission ) {
$posted_data = $submission->get_posted_data();
}
if ( 'Coupon Form' == $title ) {
// Form fields
$name = $posted_data['name'];
$email = $posted_data['coupon-email'];
//Generate coupon
$coupon_code = rand(100,999); // Code
$amount = '10'; // Amount
$discount_type = 'percent'; // Type: fixed_cart, percent, fixed_product, percent_product
$coupon_description = 'This coupon generated from form. For '.$name.' '.$email;
$coupon = array(
'post_title' => $coupon_code,
'post_content' => '',
'post_excerpt' => $coupon_description,
'post_status' => 'publish',
'post_author' => 1,
'post_type' => 'shop_coupon'
);
$new_coupon_id = wp_insert_post( $coupon );
//Update code
$coupon = array();
$coupon['ID'] = $new_coupon_id;
$coupon['post_title'] = strval($coupon_code).strval($new_coupon_id);
wp_update_post($coupon);
// Add meta
update_post_meta( $new_coupon_id, 'discount_type', $discount_type );
update_post_meta( $new_coupon_id, 'coupon_amount', $amount );
update_post_meta( $new_coupon_id, 'individual_use', 'no' );
update_post_meta( $new_coupon_id, 'usage_limit', '1' );
//Sending mail
remove_all_filters( 'wp_mail_from' );
remove_all_filters( 'wp_mail_from_name' );
$to = $email;
$subject = "קופון הנחה";
$headers = "Content-type: text/plain; charset=\"utf-8\"\n";
$headers .= 'From: האטורי - ישראל <noreply@hattori.co.il>' . "\r\n" ;
$headers .= "Content-type: text/plain; charset=\"utf-8\"\n";
$message = "תודה על הרשמתך\r\n";
$message .= "האטורי שמחה להעניק לך קוד קופון".$coupon['post_title']."\r\n";
$message .= "המקנה לך 10% הנחה ברכישה ראשונה באתר\r\n";
$message .= "מוזמנים לבקר בחנות ברחוב טשרניחובסקי 21 תל אביב\r\n";
$message .= "בכל שאלה מוזמנים ליצור קשר\r\n";
$message .= "האטורי - ישראל\r\n";
wp_mail( $to, $subject, $message, $headers);
}
}