Я использую плагин «Контактная форма 7 Загрузка файлов с перетаскиванием - загрузка нескольких файлов» (https://codecanyon.net/item/contact-form-7-drag-and-drop-files-upload-multiple-files-upload/20683653) плагин в моей форме. Загрузки могут быть довольно большими, поэтому я не хочу, чтобы они прикреплялись к почтевместо этого есть ссылки на загруженные файлы в почте.
Я удалил тег из поля почтового вложения и добавил его в тело письма, надеясь, что он выведет ссылки на загруженный файл:
<p><strong>IMAGES</strong><br/><br/>[dropfiles-291]</a></p>
Но выводятся только имена файлов, разделенные "|". Например: 'imagename1.jpg | imagename2.jpg | imagename3.jpg | imagename4.jpg'.
После некоторого поиска янашел этот код в коде плагина перетаскивания:
add_filter('wpcf7_mail_tag_replaced_dropfiles', array($this, 'wpcf7_mail_tag_replaced'), 100, 3);
function wpcf7_mail_tag_replaced($text, $submitted, $html ){
$upload_dir = wp_upload_dir();
$datas = explode("|",$text);
$url = $upload_dir["baseurl"]."/cf7-uploads-save/";
$text_custom = array();
foreach ($datas as $value) {
$text_custom[] = $url.$value;
}
if($html){
return implode(" <br>", $text_custom);
}else{
return implode(" | ", $text_custom);
}
}
Я не являюсь разработчиком php, но мне кажется, что этот код должен обернуть загруженные файлы ссылкой в сообщении электронной почты.это не работает. И после обширных онлайн-исследований я изменил код на:
add_filter('wpcf7_mail_tag_replaced', array($this, 'wpcf7_mail_tag_replaced_dropfiles'), 100, 3);
function wpcf7_mail_tag_replaced_dropfiles( $text, $submitted, $html ){
$upload_dir = wp_upload_dir();
$datas = explode("|",$text);
$url = $upload_dir["baseurl"]."/cf7-uploads-save/";
$text_custom = array();
foreach ($datas as $value) {
$text_custom[] = $url.$value;
}
if($html){
return implode(" <br>", $text_custom);}
else{return implode(" | ", $text_custom);}
}
Письмо теперь имеет желаемый эффект ссылки, но на ВСЕ отправленные поля в форме, а не только на [dropfiles] fieLDS.Поля [dropfiles] отлично смотрятся со ссылкой на каждый загруженный файл в новой строке и т. Д. Но я, разумеется, не хочу, чтобы обычные поля text, textarea, checkbox, radio и т. Д. Также были ссылками.
Я отправил заявку в службу поддержки разработчику плагина, но пока ничего не слышал.Какой подход я могу использовать, чтобы заставить это работать?