I think this is the real key here:<div><br></div><div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><b><span style>*Neither* the parent nor the child should be attempting to adjust the</span><br style><span style>background image in the style.css file at this point.</span></b></blockquote>
</div><div><br></div><div>The only real issue is: right now, Themes are *not* required to support custom backgrounds. Should custom-background support criticality be bumped up from *recommended* to *required*?</div><div><br>
</div><div>Chip<br><br><div class="gmail_quote">On Mon, Jun 11, 2012 at 1:49 PM, Otto <span dir="ltr"><<a href="mailto:otto@ottodestruct.com" target="_blank">otto@ottodestruct.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I think you've got this backwards, man.<br>
<br>
Child theme's have their functions.php files executed first. So if<br>
they call add_theme_support('custom_background,$args); with the<br>
$args['default-image'] set, then they can easily override the default<br>
image of the parent theme. Look at how add_theme_support handles<br>
multiple calls.<br>
<br>
In other words, if child has this:<br>
add_theme_support( 'custom_background, array( 'default-image'=>'foo' ) );<br>
<br>
and the parent has this:<br>
add_theme_support( 'custom_background, array( 'default-image'=>'bar' ) );<br>
<br>
Then the default image will be "foo".<br>
<br>
*Neither* the parent nor the child should be attempting to adjust the<br>
background image in the style.css file at this point.<br>
Custom-backgrounds mean that the background is chosen by the user, not<br>
by the theme. The theme is defining defaults and letting the user<br>
choose. Attempting to change it in the style.css file directly isn't<br>
letting the user choose anymore.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Otto<br>
</font></span><div class="im HOEnZb"><br>
<br>
On Mon, Jun 11, 2012 at 1:33 PM, Philip M. Hofer (Frumph)<br>
<<a href="mailto:philip@frumph.net">philip@frumph.net</a>> wrote:<br>
</div><div class="HOEnZb"><div class="h5">> Because of the coding of how appearance -> background works in 3.4 there is<br>
> going to be a problem with 'parent' themes setting default images and colors<br>
> to their theme. (probably just images from what I read)<br>
><br>
> The problem:<br>
><br>
> If a parent theme sets an image as a default in the $args, it will forever<br>
> then be required to use the appearance -> background<br>
><br>
> Why:<br>
><br>
> Order of execution, even if you remove the background image and color from<br>
> the background -> appearance it still sets background-image: none; even<br>
> after cleared.<br>
><br>
> What this does?<br>
><br>
> This makes it so that any image set from the style.css either child theme or<br>
> parent theme or even plugin will be ignored completely.<br>
><br>
> -------<br>
><br>
> What we need to look for.<br>
><br>
> If the theme in question ever wants to have child themes associated with it,<br>
> then the main theme must *not* set defaults in the $args in 3.4<br>
><br>
> Since we want everyone to be child theme capable. Then if any defaults are<br>
> set in the parent theme they need to be removed or child themes simply will<br>
> not work when setting a new image for that child theme.<br>
><br>
><br>
> ---<br>
><br>
> This might change if the logic changes before release, but this is how it is<br>
> right now. according to:<br>
><br>
> <a href="http://core.trac.wordpress.org/ticket/20448" target="_blank">http://core.trac.wordpress.org/ticket/20448</a><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> theme-reviewers mailing list<br>
> <a href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
> <a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
_______________________________________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
</div></div></blockquote></div><br></div>