Динамически отправлять pdf-файл, прикрепленный к сообщению, с контактной формой 7 [закрыто]


Я пытаюсь отправить динамический pdf-файл, который прикреплено к сообщению через контактную форму плагина 7.

Я предполагаю, что мне нужно использовать крючок:

add_action('wpcf7_before_send_mail','send_pdf');

Поскольку это был крючок, который я видел наиболее часто используемым при поиске решения.

Вот что у меня есть, я только что попробовал с тестовым PDF-файлом с абсолютным URL-адресом:

function send_pdf( $cf7 ) {
    if ($cf7->id==741){
        $cf7->uploaded_files = array ( 'pdf' => get_template_directory().'/test.pdf' );
    }
}

Теперь, если я правильно понимаю, если идентификатор контактной формы правильный, и у меня есть [pdf] в поле mail2 "вложение файла", то этот pdf-файл следует отправить по электронной почте человеку, у которого есть представили свои данные?

Для меня, хотя это не работает, я получаю электронное письмо, но без вложений.

Есть ли что-то, чего мне здесь не хватает, или, возможно, я знаю другой метод, который работает?

Author: UzumakiDev, 2015-01-24

1 answers

Попробуйте вместо этого вот это. В CF7 3.9 произошла некоторая внутренняя реструктуризация.

add_action('wpcf7_before_send_mail','send_pdf');

function send_pdf( $cf7 ) {
    $id = $cf7->id();
    if ($id==741){
        $submission = WPCF7_Submission::get_instance();
        $submission->add_uploaded_file('pdf', get_template_directory().'/test.pdf');
    }
}

Это должно сработать.

 7
Author: WordPress Mike, 2015-01-24 18:58:24