Задать вопрос
@alexiusgrey

После переноса с моего на хост клиента в pdf перестала отображаться картинка,в чем может быть проблема?

У меня на сайте в письмах прикрепляется пдф-файл, и там в нем есть картинка-подпись.
Делал с помощью dompdf, и на моем хостинге все работало и работает благополучно.
Никаких плагинов, плагины не подошли для того, что мне надо - долго объяснять - ПРОСТО НЕТ, сам делал документ, подключал без композера. все работало.

add_filter( 'woocommerce_email_attachments', 'attach_terms_conditions_pdf_to_email', 10, 3);

function attach_terms_conditions_pdf_to_email ( $attachments , $id, $object ) {
    $your_pdf_path = get_template_directory() . '/pdf-test.pdf';
    $attachments[] = $your_pdf_path;
    return $attachments;
}

require_once get_template_directory() . '/assets/dompdf/autoload.inc.php';
 use Dompdf\Dompdf;
 $dompdf = new Dompdf();
 ob_start();
require(get_template_directory().'/pdf-test.php');
 $content_pdf = ob_get_clean();
 $dompdf->loadHtml( $content_pdf);
 // (Optional) Setup the paper size and orientation
 $dompdf->setPaper('A3', 'portarait');
 // Render the HTML as PDF
 $dompdf->render();
 // Output the generated PDF to Browser 
$output = $dompdf->output();
file_put_contents(get_template_directory() . '/pdf-test.pdf', $output);
?>


Как перенес на хост клиента, то картинка в письме не отображается.
$dompdf->set_option('isRemoteEnabled', TRUE);
не помогает, пути менял и на абсолютные,и на относительные, тоже.
На моем хостинге картинка внутри php, который конвертируется в пдф - в pdf-test.php, прописана вот так
<img style="width: 65%;float:right;" src="<?php echo get_template_directory_uri(); ?>/signature.png" />

и благополучно отображается.
Почему на одном хосте все отображается, а на другом нет? И как можно это исправить, если isRemoteEnabled' не помогает?
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 4
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
get_template_directory_uri() возвращает относительную ссылку? у клиента существует директория с файлом signature.png с которой соотносится данная ссылка?
Ответ написан
Adamos
@Adamos
Очевидно, стоит проверить, что на новом хостинге выдает get_template_directory_uri()
Например, не указывает ли он вообще на старый хостинг.
Ответ написан
Immortal_pony
@Immortal_pony Куратор тега PHP
Закодируй картинку в base64 и запихни это в src - тогда ни с какими файлами возиться не придётся.
Ответ написан
Комментировать
@alexiusgrey Автор вопроса
Разобрался и все было очень голобально. Не было нужных модулей на хосте. Пришлось подключать на впс. Очень-очень замороченно. Сейчас вроде бы работает
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы