Gallery display enhancements from tellyworth. fixes #6368

git-svn-id: http://svn.automattic.com/wordpress/trunk@7496 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
ryan 2008-03-24 02:57:19 +00:00
parent 74035dc969
commit 193b20c03f
3 changed files with 40 additions and 11 deletions

View File

@ -460,10 +460,10 @@ function get_attachment_taxonomies($attachment) {
function image_attachment_fields_to_edit($form_fields, $post) {
if ( substr($post->post_mime_type, 0, 5) == 'image' ) {
$form_fields['post_title']['required'] = true;
$form_fields['post_excerpt']['label'] = __('Description');
$form_fields['post_excerpt']['label'] = __('Caption');
$form_fields['post_excerpt']['helps'][] = __('Alternate text, e.g. "The Mona Lisa"');
$form_fields['post_content']['label'] = __('Long Description');
$form_fields['post_content']['label'] = __('Description');
$thumb = wp_get_attachment_thumb_url($post->ID);
@ -554,11 +554,11 @@ function get_attachment_fields_to_edit($post, $errors = null) {
'value' => $edit_post->post_title,
),
'post_excerpt' => array(
'label' => __('Description'),
'label' => __('Caption'),
'value' => $edit_post->post_excerpt,
),
'post_content' => array(
'label' => __('Long description'),
'label' => __('Description'),
'value' => $edit_post->post_content,
'input' => 'textarea',
),

View File

@ -339,8 +339,20 @@ function gallery_shortcode($attr) {
$output = apply_filters('post_gallery', '', $attr);
if ( $output != '' )
return $output;
extract(shortcode_atts(array(
'orderby' => 'menu_order ASC, ID ASC',
'id' => $post->ID,
'itemtag' => 'dl',
'icontag' => 'dt',
'captiontag' => 'dd',
'columns' => 3,
'size' => 'thumbnail',
), $attr));
$attachments = get_children("post_parent=$post->ID&post_type=attachment&post_mime_type=image&orderby=\"menu_order ASC, ID ASC\"");
$id = intval($id);
$orderby = addslashes($orderby);
$attachments = get_children("post_parent=$id&post_type=attachment&post_mime_type=image&orderby=\"{$orderby}\"");
if ( empty($attachments) )
return '';
@ -348,16 +360,21 @@ function gallery_shortcode($attr) {
if ( is_feed() ) {
$output = "\n";
foreach ( $attachments as $id => $attachment )
$output .= wp_get_attachment_link($id, 'thumbnail', true) . "\n";
$output .= wp_get_attachment_link($id, $size, true) . "\n";
return $output;
}
$listtag = tag_escape($listtag);
$itemtag = tag_escape($itemtag);
$captiontag = tag_escape($captiontag);
$columns = intval($columns);
$output = apply_filters('gallery_style', "
<style type='text/css'>
.gallery {
margin: auto;
}
.gallery div {
.gallery-item {
float: left;
margin-top: 10px;
text-align: center;
@ -365,17 +382,28 @@ function gallery_shortcode($attr) {
.gallery img {
border: 2px solid #cfcfcf;
}
.gallery-caption {
margin-left: 0;
}
</style>
<!-- see gallery_shortcode() in wp-includes/media.php -->
<div class='gallery'>");
foreach ( $attachments as $id => $attachment ) {
$link = wp_get_attachment_link($id, 'thumbnail', true);
$link = wp_get_attachment_link($id, $size, true);
$output .= "<{$itemtag} class='gallery-item'>";
$output .= "
<div>
<{$icontag} class='gallery-icon'>
$link
</div>";
if ( ++$i % 3 == 0 )
</{$icontag}>";
if ( $captiontag && trim($attachment->post_excerpt) ) {
$output .= "
<{$captiontag} class='gallery-caption'>
{$attachment->post_excerpt}
</{$captiontag}>";
}
$output .= "</{$itemtag}>";
if ( $columns > 0 && ++$i % $columns == 0 )
$output .= '<br style="clear: both" />';
}

View File

@ -118,6 +118,7 @@ function shortcode_parse_atts($text) {
}
function shortcode_atts($pairs, $atts) {
$atts = (array)$atts;
$out = array();
foreach($pairs as $name => $default) {
if ( array_key_exists($name, $atts) )