I am using Printer, e-mail and PDF versions, and I was wondering if there were a way I could place the print button in node.tpl.php above the $content area, instead of through the Drupal administration area. Could that be done through a variable?

link|improve this question

78% accept rate
feedback

2 Answers

up vote 1 down vote accepted

In the administration area, disable the insertion of the link, then add the following (depending on which modules you use) to your node.tpl.php:

  • Print: <?php l('Print', 'print/'.$node->nid); ?>
  • Print to PDF: <?php l('PDF version', 'printpdf/'.$node->nid); ?>
  • Send by email: <?php l('Send by email', 'printmail/'.$node->nid); ?>

However given you have your own theme template, it could be better to just modify the CSS applied to the print link(s) to be in a different location on screen.

link|improve this answer
+1 for CSS being a good way to deal with this, leaving the markup nicely ordered. – Andy May 14 '11 at 12:17
Great -- thanks! So then use absolute Positioning to move it above the $content area? Yeah I guess that makes sense. – Jane May 14 '11 at 12:27
feedback

Another options could be to use something like Display Suite to manage the layout of your node display rather than writing custom templates. Since the Print module implements hook_content_extra_fields, the Print option should show up as a CCK field, that you could then drap/drop to your desired location.

link|improve this answer
Awesome! I wasn't even aware of this module. I have to try it out, but from what I've read it might just change my entire Drupal life, LOL. Thanks!!! – Jane May 14 '11 at 17:14
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.