Einbindung von fpdf.php in Wordpress

Diskussionen und Austausch über die von FPDF bereitgestellten Methoden, Problemen bei der Anwendung etc.
gottfrieds
Benutzer
Beiträge: 1
Registriert: So 21. Jan 2018, 10:30

Einbindung von fpdf.php in Wordpress

Beitragvon gottfrieds » So 21. Jan 2018, 10:50

Hatte ein großes Problem. Wollte mit einem Button eine PDF Ausgabe anstoßen. Habe lange nach der Lösung gesucht. Vielleicht haben auch andere das Problem, dass man Ausgaben vor der Bearbeitung macht, was bei Wordpress Seiten schwierig zu umgehen ist. Hier mein Lösungsansatz, der ggfs, auch anderen hilft:

Benutze admin-post.php. In ein Snippet (functions.php) habe ich folgenden Beispielcode eingegeben. fpfd.de liegt bei mir in dem Verzeichnis /wp-content/uploads/fpdf/.

Code: Alles auswählen

add_action( 'admin_post_list_PDF', 'list_PDF' );

/**
 * Generate PDF File.
 */
 
function list_PDF() {
 
    global $wpdb;
 
    /*
     * Ob alle header erfordelrich sind, habe ich nicht geprüft
    */
 
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private", false);
    header('Content-Type: text/csv; charset=utf-8');
    header("Content-Transfer-Encoding: binary");
 
    /*
     * create a PDF file pointer
    */
    require WP_CONTENT_DIR . '/uploads/fpdf/fpdf.php';
    $pdf = new FPDF();
    $pdf->AddPage();
    $pdf->SetFont('Arial', 'B', 16);
    $page = 'Hello world';
    $pdf->Cell(40, 10, $page);
    $pdf->Output();
    exit;
}


Das dazu gehörige Formular sieht so aus:

<form action="<?php echo admin_url( 'admin-post.php' ); ?>">
<input type="hidden" name="action" value="list_PDF" />
<input type="submit" value="Seite drucken" />
</form>


Der PDF File erscheint dann auf dem Bildschirm mit dem Standard PDF Viewer.

Zurück zu „Programmierung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste