How to add default images for custom backgrounds?

The custom header feature allows (in some code I have found) to suggest several default images to use in the custom header.

Could the same be built in the custom background?

Read More

The idea is to have already some textures available for the user to choose from in the theme.

Any ideas?

Related posts

Leave a Reply

3 comments

  1. if you are asking default background image for
    add_theme_support( 'custom-background'); then it can be set using 'default-image' => get_template_directory_uri() . '/images/pattern.png',

    complete code will look like below.

    $args = array(
    'default-color'  => 'f0f0f0',
    'default-repeat' => 'fixed',
    'default-image'  => get_template_directory_uri() . '/assets/images/pattern.png',
    );
    add_theme_support( 'custom-background', $args );
    
  2. I would suggest outputting a line of CSS in your header.php file, something like

    <?='.body {background-image:url(/your/path/to/images/'.$YOUR_CHOSEN_IMAGE.'.png);}'?>
    
  3. I’m not really sure what you’re asking, but here goes.

    Assuming that you already know the options settings api, here’s a form you can use to implement that idea:

        <label for="bg1">
          <img src="http://lorempixel.com/50/50" />
          <input class="select_control" id="bg1" name="bg" type="radio" value="bg1" />
        </label>
    
        <label for="bg2">
            <img src="http://lorempixel.com/50/50" />
            <input class="select_control" id="test2" name="bg" type="radio" value="bg2" />
        </label>
    
        <label for="bg3">
            <img src="http://lorempixel.com/50/50" />
            <input class="select_control" id="bg3" name="bg" type="radio" value="bg3" />
        </label>
    

    http://jsfiddle.net/58sWX/

    Convert that using the settings API, then use get_option() to retrieve your background image url to display it.

    If you want to change the CSS, background: url(), based on the option value. Then you might need to know how to use CSS in PHP.

     <?php
     header("Content-type: text/css");
    
     <?php if (get_option('your_background_image') != '') : ?>
     body {
          background: url( <?php echo get_option('your_background_image'); ?>;
     }
     <?php endif; ?>