Print Friendly

PrintFriendly-Options
Version reviewed:2.1.5
Author:printfriendly
Price:Free
Plugin URL:Website

Summary: Printfriendly makes it easy to add a Print/PDF button to your pages. It has a slight speed penalty, but if you need the functionality, it's quite good.

Print Friendly has a pretty good WordPress.org page, explaining what it does: it adds a print button, clicking upon which creates a print and PDF version of your posts or pages. It presents this in an overlay on your site.

Usage

After installation, you go to the settings page and decided where to place the print friendly button and with which layout. You can choose from several version of the button as well as decide whether to place it left or right and top or bottom of the page. This settings page has a very clean, native WordPress design that looks good and it worked as advertised.

Clicking the print button than displays the print friendlyinterface straight there on your site in a popup lightbox. The user can then remove images, if needed and either print or save as PDF.

Code Quality

My biggest gripe is with the slight speed impact this Print Friendly plugin could have on your site: it loads a JavaScript file, from printfriendly’s CDN. It loads this for all users, irrespective of whether they actually want to print your page. Because they also have a bookmarklet that shows that print interface on their own site, which doesn’t have that disadvantage, I’d actually like them to have that option in the plugin as well.

Another issue is the fact that the plugin outputs inline styles and has no option to disable that. I’d actually like to be able to add some CSS to my own site’s CSS and remove them from their output. If the user doesn’t opt to do that, the CSS should actually be output in a style tag in the head section.

The JS the plugin puts out is not properly enqueued, which it should be. Right now if there was a theme with multiple posts appearing on the same page it would actually load the JS several times too. It could just be loaded once, in the footer.

On the admin side, the plugin doesn’t use the Options API and uses several options to store it’s settings instead of storing an array in one option. It also doesn’t use nonces.

In all, I’d have to say the code quality could definitely use some improvement, most of them along the lines of making better use of the WordPress API’s.

Post author: Joost de Valk

Joost de Valk is the owner and creator of Yoast.com. He's a WordPress / Web developer, SEO & and an Open Source fanatic. He's also (and more importantly) the father of two sons called Tycho and Ravi, a daughter called Wende and the husband of a lovely wife called Marieke. Read all about Joost »

Yoast.com runs on the Genesis Framework

Genesis theme frameworkThe Genesis Framework empowers you to quickly and easily build incredible websites with WordPress. Whether you're a novice or advanced developer, Genesis provides you with the secure and search-engine-optimized foundation that takes WordPress to places you never thought it could go.

Read our Genesis review or get Genesis now!