WordPress.org

Make WordPress Core

Ticket #6380: 6380-style.diff

File 6380-style.diff, 2.2 KB (added by andy, 6 years ago)
  • wp-includes/media.php

     
    340340        if ( $output != '' ) 
    341341                return $output; 
    342342                 
    343         extract(shortcode_atts(array( 
     343        extract(shortcode_atts(apply_filters('gallery_defaults', array( 
    344344                'orderby'    => 'menu_order ASC, ID ASC', 
    345345                'id'         => $post->ID, 
    346346                'itemtag'    => 'dl', 
     
    348348                'captiontag' => 'dd', 
    349349                'columns'    => 3, 
    350350                'size'       => 'thumbnail', 
    351         ), $attr)); 
     351        )), $attr)); 
    352352 
    353353        $id = intval($id); 
    354354        $orderby = addslashes($orderby); 
     
    369369        $captiontag = tag_escape($captiontag); 
    370370        $columns = intval($columns); 
    371371        $itemwidth = $columns > 0 ? floor(100/$columns) : 100; 
    372          
    373         $output = apply_filters('gallery_style', " 
    374                 <style type='text/css'> 
    375                         .gallery { 
    376                                 margin: auto; 
    377                         } 
    378                         .gallery-item { 
    379                                 float: left; 
    380                                 margin-top: 10px; 
    381                                 text-align: center; 
    382                                 width: {$itemwidth}%;                   } 
    383                         .gallery img { 
    384                                 border: 2px solid #cfcfcf; 
    385                         } 
    386                         .gallery-caption { 
    387                                 margin-left: 0; 
    388                         } 
    389                 </style> 
     372 
     373        $output = " 
    390374                <!-- see gallery_shortcode() in wp-includes/media.php --> 
    391                 <div class='gallery'>"); 
     375                <div class='gallery'>"; 
    392376 
    393377        foreach ( $attachments as $id => $attachment ) { 
    394378                $link = wp_get_attachment_link($id, $size, true); 
    395                 $output .= "<{$itemtag} class='gallery-item'>"; 
     379                $output .= "<{$itemtag} class='gallery-item' style='width:{$itemwidth}%'>"; 
    396380                $output .= " 
    397381                        <{$icontag} class='gallery-icon'> 
    398382                                $link 
     
    415399        return $output; 
    416400} 
    417401 
     402function gallery_style() { 
     403?> 
     404 
     405<style type='text/css'> 
     406        .gallery { 
     407                margin: auto; 
     408        } 
     409        .gallery-item { 
     410                float: left; 
     411                margin-top: 10px; 
     412                text-align: center; 
     413        } 
     414        .gallery img { 
     415                border: 2px solid #cfcfcf; 
     416        } 
     417        .gallery-caption { 
     418                margin-left: 0; 
     419        } 
     420</style> 
     421 
     422<?php 
     423} 
     424 
     425function gallery_scan() { 
     426        global $posts; 
     427 
     428        if ( !is_array($posts) ) 
     429                return; 
     430 
     431        foreach ( $posts as $post ) { 
     432                if ( false !== strpos($post->post_content, '[gallery') ) { 
     433                        add_action('wp_head', 'gallery_style'); 
     434                        break; 
     435                } 
     436        } 
     437} 
     438 
     439add_action('template_redirect', 'gallery_scan'); 
     440 
    418441function previous_image_link() { 
    419442        adjacent_image_link(true); 
    420443}