Printing printer friendly version of nodes in bulk My scenario is this, a user selects a bunch of nodes and selects to print all the nodes.  What I'd like to happen is, once the user clicks the print button, the print dialog opens up and all the nodes are printed at once.  I'm using the Print module and I'm having a hard time figuring out how to print programmatically and all at once.
While the print module doesn't have much of an API, you can look at print_controller_html() to see how it renders printed pages:

$query = $_GET;
unset($query['q']);

$html = theme('print', array('node' =&gt; $node, 'query' =&gt; $query, 'format' =&gt; $link['format']));
drupal_add_http_header('Content-Type', 'text/html; charset=utf-8');
drupal_send_headers();
print $html;


For your purposes, you can changes a few arguments to the theme function and wrap it around a loop of nodes you wish to print. Something like

$html = '';
foreach($nodes as $node) {
  $html .= theme('print', array('node' =&gt; $node, 'query' =&gt; $_GET, 'format' =&gt; 'html'));
}


The theme function makes use of a template that you can override in case you want alter the HTML printed in a significant way.