хоть примерный вариант
тестовые поля передаются без проблем
суть такая:
файл отправляем
на сервере смотрим его формат, если не подходит ничего не делаем (или можем вернуть ошибку),
если все ок, сохраняем в папку (создаем новую папку uploads) и ссылку на файл отправляем в телеграм
$('.request__button').on('click', function(e) {
var file_data = $('#inputfile').prop('files')[0];
var form_data = new FormData();
form_data.append('file', file_data);
var surname = $('#c_surname').val();
var name = $('#c_name').val();
$.ajax({
url: myajax.url,
type: 'POST',
data: {
action: 'request',
surname: surname,
name: name,
files: form_data
},
}).done(function(data){
});
return false;
});
add_action('wp_ajax_request', 'request_action');
add_action('wp_ajax_nopriv_request', 'request_action');
function request_action() {
$chat_id = 'тут есть номер';
$token = 'тут тоже есть номер;
$surname = $_POST['surname'];
$name = $_POST['name'];
$text .= "<b>Сообщение с сайта</b>\n\n";
$text .= "Фамилия: ".$surname."\n";
$text .= "Имя: ".$name."\n";
$text = urlencode($text);
$str = "https://api.telegram.org/bot".$token."/sendMessage?chat_id=".$chat_id."&parse_mode=html&text=".$text;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $str);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
wp_die();
}