WordPress is the most popular blogging platform not just because it is free but also because it gives complete control over the blog’s content and design. I recommend WordPress.org over WordPress.com. So, you should think about choosing a self-hosted blog.
WordPress allows you to customize the blog in any manner. You have lots of themes and plugins to change the design and add more functionality. Most of the WordPress themes come with an option to change the background. But have you ever thought of having a different background for different posts? You will never find this option in any theme. What if you want a different background for posts and pages just for making your blog look better and different. There could be more reasons for doing this.
Free WordPress Plugins to add custom backgrounds
If you want to add a custom background to WordPress posts and pages, you can do with a freely available plugin, Custom Background Extended.
If you want to add custom background to your WordPress posts or pages, install Custom Background Extended plugin on your WordPress blog. After the installation, activate the plugin. This plugin will add an extra custom meta box to the post editor and page editor as well. When you are creating a new post or page content, you can use this meta box to add a custom background. For existing posts, you can simply edit the post and select a background using the meta box the plugin added.
It lets users select a background color or image. If you are using custom image, it also lets you select vertical and horizontal position of a background image. If nothing is selected, default post background will be displayed.
Few themes may not support the plugin but there is a workaround to fix the issue. If after plugin installation, there is no meta box for background. It means your theme is not supporting this feature. You need to manually add theme support for custom background. Just edit the functions.php file and add this code.
add_theme_support( 'custom-background' );
There are few other plugins which do similar kind of job and let users add custom background. This plugin just does the basic tasks.
WP-Backgrounds Lite is also free WordPress plugin that helps you to set a custom background for different post and pages. This plugin also allows you to set clickable backgrounds. You can also try this.
Paid Plugin to add custom background
There is also a paid plugin that offers more advanced features. This plugin is Custom Backgrounds for WordPress This plugin allows you to set a custom background on any page templates in WordPress. You can set a custom background on pages, posts, custom post types, archives, author pages, login page and custom taxonomies. You can set a single or multiple backgrounds, set times backgrounds schedule background changes and add jQuery Parallax effects.
Not just this, you can also set clickable backgrounds if you need for any reason.
If you need advanced features, you can buy Custom Backgrounds for WordPress Codecanyon.
If you know how to code, you can manually achieve this by creating your plugin or editing the code of your existing theme. You can use CSS and PHP to code something similar to this. Otherwise, you know a free and a paid plugin. You can select any of those depending on your need.
If you have any confusion, you can ask me in comments.