Как сделать, чтобы в письме Contact Form 7 отправлялся город, который автоматически определяется по IP?

Пробовал плагин WT GeoTargeting - но шорткоды оттуда не работают (и через php не вызываются).
  • Вопрос задан
  • 369 просмотров
Пригласить эксперта
Ответы на вопрос 1
shahin1989
@shahin1989
WordPress разработчик
Добавляешь в functions.php:

add_action( 'wpcf7_before_send_mail', function($contact_form) {
    
    $submission = WPCF7_Submission::get_instance();
    $posted_data = $submission->get_posted_data();

    $mail = $contact_form->prop( 'mail' ); 
	
	$city = do_shortcode('[wt_geotargeting get="city"]');
		
	$mail['body'] = str_replace('[wz_city]', $city, $mail['body']);
    $mail['body'] .=  $city;
    
    $contact_form->set_properties( array( 'mail' => $mail ) );
    return $contact_form;

});


ну и дальше вставляешь в теле письма шорткод [wz_city]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы