diff -u b/core/includes/common.inc b/core/includes/common.inc --- b/core/includes/common.inc +++ b/core/includes/common.inc @@ -3728,7 +3728,13 @@ * - If this element has an array of #theme_wrappers defined and * #render_children is not set, #children is then re-rendered by passing the * element in its current state to theme() successively for each item in - * #theme_wrappers. + * #theme_wrappers. Since #theme and #theme_wrappers hooks often define + * variables with the same names and this can cause conflicts, it is + * possible to explicitly specify which theme wrapper hook each attribute is + * passed to by renaming it to #wrapper_wrappername_attributename. For + * example, to ensure an attribute that would normally be named #attributes + * is only used by the 'container' theme wrapper, it can be renamed to + * #wrapper_container_attributes. * - If this element has an array of #post_render functions defined, they are * called sequentially to modify the rendered #children. Unlike #pre_render * functions, #post_render functions are passed both the rendered #children