How do I set a node/page's background image to that content's image?
This can be done without installing extra modules:


Add an image field in the content types you want to enable a dynamic background image.
Use this code:
template.php:

function THEME_preprocess_page(&amp;$vars) {
    if (!empty($vars['node'])) {
        $node = $vars['node'];
        if (!empty($node-&gt;field_background_image)) {
            $image = file_create_url($node-&gt;field_background_image[LANGUAGE_NONE][0]['uri']);
            $vars['background_image_css'] = 'style="background: url(' . $image . ') no-repeat scroll center center / cover #FCFCFC;"';
        }
}
}



Add this in your div#content in page.tpl.php:

print (!empty($background_image_css)) ? $background_image_css : ''; ?>


Updated version: template.php:

function THEME_preprocess_page(&amp;$vars) {
 $node = menu_get_object('node');
 if (!empty($node) &amp;&amp; !empty($node-&gt;field_background_image)) { 
        $image = file_create_url($node-&gt;field_background_image[LANGUAGE_NONE][0]['uri']); 
        drupal_add_css('div#content {background: url(' . $image . ') no-repeat scroll center center / cover #FCFCFC; }', array('type' =&gt; 'inline'));
 } 
}