私はPDFファイルを生成するためにwordpressでmpdfを使用しています。私は毎週のレポートをユーザーに送信する機能に取り組んでいます。レポートは電子メールで送信し、pdfは電子メールで添付します。mpdf - functions.phpで週報PDFを生成
私の問題は、毎週このコードを実行するために、私はサーバー側のcronジョブを使用するつもりで、私の関数はfunctions.phpファイル内で実行する必要があるため、functions.phpファイルでコードを実行しているということです。
function weeklyReportFunc(){
include('mpdf/mpdf.php');
$mpdf = new mPDF();
ob_start();
require get_template_directory() . '/includes/report.php';
$x = ob_get_contents();
ob_end_clean();
$mpdf->WriteHTML($x);
$today = date('Y-m-d');
$pdfName = 'weekly-report-'.$today;
$mpdf->Output($pdfName.'.pdf', 'D');
}
をそして、これはエラーの下に私を示しています:だから私はのfunctions.phpファイルにこのコードを追加
Warning: Cannot modify header information - headers already sent by (output started at
/home/user/public_html/doms/wp-admin/includes/template.php:1995) in /home/user/public_html/
doms/wp-content/themes/mytheme/mpdf/mpdf.php on line 8314
Warning: Cannot modify header information - headers already sent by (output started at
/home/user/public_html/doms/wp-admin/includes/template.php:1995) in
/home/user/public_html/doms/wp-content/themes/mytheme/mpdf/mpdf.php on line 1706
mPDF error: Some data has already been output to browser, can't send PDF file
どのように私はこの問題を解決することができますか?たぶん私はいくつかのアクションで私の機能を使用する必要がありますか?しかしどちら?どんなアイデアですか?
チェック:/home/user/public_html/doms/wp-admin/includes/template.php:1995多くの場合、問題はPHPファイルの末尾にある空白です(これを防ぐためにPHPの終了タグを削除してください) –
ワードプレスコアファイル。もし私がPHPの終了タグを削除したら、次回の更新で私はそれをやり直す必要があります。そして各wordpressのアップデートでも同じです。 @SanderBackus – aidadev
私はその行(/home/user/public_html/doms/wp-admin/includes/template.php:1 995)にチェックして、奇数のスペース/終了タグはなく、最後の行でもないそのファイル。 PHPのクローズ/オープニングタグがありますが、そこに存在する必要があります。その他の提案はありますか? @SanderBackus – aidadev