Overriding the [gallery]
is simple. Below you’ll find a snippet that overrides it with a custom implementation. You can use the same method to override any of the built-in shortcodes, such as [audio]
, [video]
and [caption]
.
//Init hook
add_action('init', 'override_gallery');
//Override function
function override_gallery()
{
remove_shortcode('gallery');
add_shortcode('gallery', 'my_gallery_shortcode');
}
//Custom gallery shortcode
function my_gallery_shortcode($atts, $content) {
//Default parameters to
extract( shortcode_atts( array(
'ids' => '',
'orderby' => 'post__in',
'columns' => '3',
'link' => 'file' //file | link | <empty string> (for linking to attachment page)
), $atts ));
//Your own presentational code here...
}