What is the proper syntax to call the theme function for a node, passing an argument? I'm writing a Drupal 7 application that has many content types. Each of these content types has a custom template for display. For instance, I have node--event.tpl.php, node--person.tpl.php, node--feedback.tpl.php, and so on.

I'd like to be able to manually call a theme function on a node that should have an overriding template. i.e. something like the following:

&lt;?php print theme('node', array('node' =&gt; $node)); ?&gt;


The reason for this is that I've written a module called Content Inclusion which allows pieces of content to be manually included within one another. I'm trying to have this line of code in my node.tpl.php file to automatically display the included node along with the parent node.

I appreciate any and all suggestions, but I would be more interested in learning about ways to make this work - this module has some very specific requirements that existing modules were not able to address. Thanks.
You should use the node_view function for that, which attaches fields to the node and creates a build array, which when rendered will use the node theme function that you try to use directly.