Print WordPress posts as PDF. Optional with Geshi highlighting. It also has support for password protected posts and only logged in users can print post as pdf support.

Note: You can find the development repository at Github: https://github.com/fkrauthan/wp-mpdf

License

This file is part of wp-mpdf.

wp-mpdf is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

wp-mpdf is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with wp-mpdf. If not, see http://www.gnu.org/licenses/.

Simply Brilliant!

By teelanovela on May 11, 2023

Looks like the plugin isn't under active development for the time being, but I just wanted to express my gratitude for the fact that it exists in its current form.

I was just about to program something from scratch when I came upon this.

I love the simplicity of this plugin. No unnecessary API calls. No convoluted programming. Just pure and simple HTML > PDF. Easy to build upon and extend.

10/10 would mpdf again!

Very good and flexible

By Tibow (Pyho) on February 1, 2023

Thanks for this plugin very functional and flexible with some coding.
Best solution found for WordPress.
Please update for WP 6.1 even if it works well as it is. You're plugin deserve it!

Best PDF generator i found

By newslicer on April 21, 2022

This plugin is amazing. It's lightweight and powerful at the same time. The PDFs can be customized within the templates to any needs. After a long search for a PDF generator i finally found this. Thank you so much for the great work. It's perfect.

Wrong review. Sorry.

By alainmelsens on December 20, 2020

Wrong review. Sorry.

Works nice

By Joko Ruwhof (webjoko) on October 15, 2020

Thank you for this nice working plugin. I also really like the cache and download history functionality.

The best (and only one ?) plugin to create pdf from a post

By (sourcelab) on January 16, 2020

Independent of any platform : works perfectly with wordpress 5.3.2! It is extremely useful for a wordpress scientific publication website CSS customization is a bit difficult but the results superb (with footnotes, references, custom post type...)

Great plugin

By saxisme on September 30, 2019

Great plugin, it just *works*! After some trial and error I made it also to use my own template by pulling data from a BuddyPress user and display it as a contact info sheet. Thanks!

Awesome PDF!

By Juha Metsäkallas (juhametsakallas) on May 2, 2019

I wanted to provide a way for my visitors to download posts as PDFs and began to google for solutions. First of all it seems, that "post to PDF" can be understood in a couple of ways. I wanted to have it a simple way: on a post page a button, that opens a new window with the PDF to be saved or shared. I found a couple of plugins, that didn't work in my environment, server error 500. I found some with annual fees. Well, I don't mind paying for services per se, but this is a gratis site, and so far donations aren't flowing in. Then I found one with an output, that ,eh, leaves a lot to desire, until I found this. To tell the truth it took me a while to figure out how to get the button on a post. And I like to my some minor formatting on the PDF, but overall effect is wow! Nice PDF, as if I had myself manually done :-)

Great

By Anonymous User 9922786 (anonymized_9922786) on September 3, 2016

Thanks for this great plugin.
Really appreciate that you offer your free time to write a plugin like this.

question

By jsina.maleki on September 3, 2016

Hi there, how can I add the pdf button to the post?

3.9

  • Added mpdfbutton shortcode to print the PDF button
  • Fixed a php warning

3.8.3

  • Fixed deployment of 3.8.2

3.8.2

  • Downgraded psr/log to hopefully fix some runtime errors

3.8.1

  • Fixed deployment of 3.8

3.8

  • Updated mpdf version
  • Removed a file from geshi that could be abused

3.7.1

  • Added missing files to plugin

3.7

  • Updated mpdf to version 8
  • Added mpdf_adjust_settings filter to allow overwriting any mpdf settings

3.6.1

  • Fixed release tag to prevent install issues

3.6

  • Removed manual cron job and used wp-cron instead for cache population (as per wordpress guidelines)
  • Removed PHP 4 support (don’t think anyone is running that anymore)

3.5.2

  • Added some small security improvements for the admin page
  • Fixed a PHP notice when “allow to print all pages” is disabled (thanks to grandeljay)

3.5.1

  • Added some small security fixes to the admin page

3.5

  • Added support to change page format inside template (thanks to conlaccento)

3.4

  • Made codebase PHP 7.3 compatible (thanks to nopticon)
  • Fixed issues with newer wordpress versions (thanks to nopticon)

3.3

  • Fixed some small bugs
  • Updated mpdf to version 6
  • Updated geshi to latest version
  • Made plugin compatible with PHP 7

Earlier versions

For the changelog of earlier versions, please refer to the separate changelog.txt file.

  1. Upload the whole plugin folder to your /wp-content/plugins/ folder.
  2. Set write permission (777) to the plugin dir folder => /wp-content/plugins/wp-mpdf/cache
  3. Go to the plugins page and activate the plugin.
  4. Add to your template
    php
    if( function_exists( 'mpdf_pdfbutton' ) ) {
    mpdf_pdfbutton();
    }

    or as a small button
    php
    if( function_exists( 'mpdf_pdfbutton' ) ) {
    mpdf_pdfbutton( false, 'my link', 'my login text' );
    }

    The second text specifies the text which should displayed if you have checked “needs login” and a user isn’t logged in. (if you wish to open the pdf print in a new tab you may pass “true” for the first parameter)
  5. You can adjust some options: in your admin interface, click on plugins and then on wp-mpdf. For allowing or disabling pdf export you can use the checkbox when creating/editing a post or a page.
  6. Place your templates into /wp-content/wp-mpdf-themes

The mpdf_pdfbutton function signature:
php
function mpdf_pdfbutton( $opennewtab = false, $buttontext = '', $logintext = 'Login!', $print_button = true, $nofollow = false, $options = array() )

The options array supports
php
'pdf_lock_image' => '/my/image/path/relative/to/wordpress/route'

and
php
'pdf_image' => '/my/image/path/relative/to/wordpress/route'

to overwrite which icon should be used.

Reviews

4.8 out of 5 stars

  • Version: 3.9
  • Last updated: 4 months ago
  • Active installations: 1K
  • WordPress version: 2.9
  • Tested up to: 6.5.5
  • PHP version: false