WordPress.org

Make WordPress Core

Ticket #52055: 52055.1.patch

File 52055.1.patch, 2.3 KB (added by Mista-Flo, 10 months ago)

Create a new filter to edit shortcode attrs, and move the other filter a bit later

  • src/wp-includes/media.php

    diff --git a/src/wp-includes/media.php b/src/wp-includes/media.php
    index d29426213e..6d805e2a4c 100644
    a b function gallery_shortcode( $attr ) { 
    22562256                $attr['include'] = $attr['ids'];
    22572257        }
    22582258
    2259         /**
    2260          * Filters the default gallery shortcode output.
    2261          *
    2262          * If the filtered output isn't empty, it will be used instead of generating
    2263          * the default gallery template.
    2264          *
    2265          * @since 2.5.0
    2266          * @since 4.2.0 The `$instance` parameter was added.
    2267          *
    2268          * @see gallery_shortcode()
    2269          *
    2270          * @param string $output   The gallery output. Default empty.
    2271          * @param array  $attr     Attributes of the gallery shortcode.
    2272          * @param int    $instance Unique numeric ID of this gallery shortcode instance.
    2273          */
    2274         $output = apply_filters( 'post_gallery', '', $attr, $instance );
    2275 
    2276         if ( ! empty( $output ) ) {
    2277                 return $output;
    2278         }
    2279 
    22802259        $html5 = current_theme_supports( 'html5', 'gallery' );
    22812260        $atts  = shortcode_atts(
    22822261                array(
    function gallery_shortcode( $attr ) { 
    22962275                'gallery'
    22972276        );
    22982277
     2278        array_merge(
     2279
     2280        )
     2281
     2282        /**
     2283         * Filters the shortcode attributes.
     2284         *
     2285         * @since 5.7.0
     2286         *
     2287         * @see gallery_shortcode()
     2288         *
     2289         * @param array  $atts     Merged attributes of the gallery shortcode.
     2290         * @param array  $attr     User attributes of the gallery shortcode.
     2291         * @param int    $instance Unique numeric ID of this gallery shortcode instance.
     2292         */
     2293        $atts = apply_filters( 'post_gallery_attributes', $atts, $attr, $instance );
     2294
     2295        /**
     2296         * Filters the default gallery shortcode output.
     2297         *
     2298         * If the filtered output isn't empty, it will be used instead of generating
     2299         * the default gallery template.
     2300         *
     2301         * @since 2.5.0
     2302         * @since 4.2.0 The `$instance` parameter was added.
     2303         * @since 5.7.0 The `$atts` parameter was added.
     2304         *
     2305         * @see gallery_shortcode()
     2306         *
     2307         * @param string $output   The gallery output. Default empty.
     2308         * @param array  $attr     User attributes of the gallery shortcode.
     2309         * @param int    $instance Unique numeric ID of this gallery shortcode instance.
     2310         * @param array  $atts     Merged attributes of the gallery shortcode.
     2311         */
     2312        $output = apply_filters( 'post_gallery', '', $attr, $instance, $atts );
     2313
     2314        if ( ! empty( $output ) ) {
     2315                return $output;
     2316        }
     2317
    22992318        $id = (int) $atts['id'];
    23002319
    23012320        if ( ! empty( $atts['include'] ) ) {