WordPress: abilitare la stampa degli articoli in formato PDF

WordPress: abilitare la stampa degli articoli in formato PDF

Possiamo abiitare la stampa PDF degli articoli in WordPress utilizzando una libreria esterna.

Utilizzeremo la libreria mPDF in questo modo:


// functions.php

require_once( ABSPATH . '/wp-content/themes/theme/lib/mpdf/mpdf.php' );

function my_pdf_print() {
    if( isset( $_GET['pdf'] ) ) {
        $id = $_GET['pdf'];
        if( is_numeric( $id ) && filter_var( intval( $id ), FILTER_VALIDATE_INT ) ) {
          $p = get_post( $id );
          $content = do_shortcode( $p->post_content );
          if( class_exists( 'mPDF' ) ) {
            $mpdf = new mPDF();
            $mpdf->WriteHTML( $content );
            $mpdf->Output( $p->post_name . '.pdf', 'D' );
          }
        } else {
          wp_redirect( home_url() );
        }
    } else {
      wp_redirect( home_url() );
    }
}

Quindi nel file header.php avremo:


<?php if( is_single() ) {
  if( isset( $_GET[&apos;pdf&apos;] ) ) {
    my_pdf_print();
  }  
} else {
?>
<!-- Template -->
<?php } ?>

Torna su