id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,focuses 26623,Make gallery_shortcode more customizable,bradvin,,"I want to add a few simple changes to the gallery_shortcode function, which will allow for awesome customization possibilities if you are a theme or plugin author. In summary I want to check for a class attribute in the shortcode, and add 4 filters to the function. Details about the patch including a demo plugin which uses the resulting code can be found at https://github.com/bradvin/wordpress-gallery-interceptor Here are a list of the changes in detail: == Class Shortcode Attribute == Check for a class attribute in the gallery shortcode. The class (if exists) is appended to the gallery container element. Example: {{{ [gallery class=""foobar""] }}} Results in: {{{
}}} == gallery_class Filter == Introduce a new filter `gallery_class` which can be used by themes or plugins to alter the gallery class. I realise that you could just use the class shortcode attribute above, but this allows for more customization. Parameters: * `$class` - the current gallery class * `$selector` - the unique id of the gallery * `$attr` - all the gallery shortcode attributes, to allow for maximum customization An example: {{{ #!php `) * `$selector` - the unique id of the gallery * `$gallery_class` - the current gallery class * `$attr` - all the gallery shortcode attributes, to allow for maximum customization An Example: {{{ #!php ""; } add_filter( 'gallery_container_start', 'gallery_intercept_container_start', 10, 4 ); }}} == gallery_container_end Filter == Introduce a new filter `gallery_container_end` which, as the name suggests, can be used to alter the closing markup of the gallery. Paramters: * `$html` - the current gallery closing markup (`
\n`) * `$selector` - the unique id of the gallery * `$attr` - all the gallery shortcode attributes, to allow for maximum customization An Example: {{{ #!php ""; } add_filter( 'gallery_container_end', 'gallery_intercept_container_end', 10, 3 ); }}} == gallery_column_separator Filter == Introduce a new filter `gallery_column_separator` which can be used to alter the separator markup of the gallery. This filter can be used to override the
tag that is inserted when the column count is met. Paramters: * `$html` - the current gallery closing markup (`
`) * `$selector` - the unique id of the gallery * `$attr` - all the gallery shortcode attributes, to allow for maximum customization An Example: {{{ #!php ""; } add_filter( 'gallery_column_separator', 'gallery_intercept_separator', 10, 3 ); }}}",enhancement,closed,normal,,Gallery,3.8,normal,wontfix,has-patch needs-refresh,,