Thumbnails

De thumbnails in WordPress, althans toch in de versie die hier nog gebruikt wordt. Nu kan ik dat natuurlijk zelf ook doen maar dat is toch veel werk voor wat het eigenlijk maar is: GIMP openen, afbeelding resizen, nieuwe afbeelding opslaan, beide afbeeldingen uploaden, en dan hier invoegen. Daarom gebruik ik de laatste tijd meestal de medium optie, waarbij de afbeeldingen gewoon iets groter zijn.

Toen ik daarstraks echter de screenshots toevoegde aan mijn artikel over IE6, zag ik de gallery optie staan (had daar nog nooit op gelet ;)). En dat is best handig: wordt er meteen een korte beschrijving van je afbeelding onder de screenshots geplaatst.

Nu is daar ook één probleem mee: die optie gebruikt die verschrikkelijke thumbnails ...
Gelukkig is dat gemakkelijk op te lossen:
Open wp-includes/media.php en zoek:
[code php]
extract(shortcode_atts(array(
'orderby' => 'menu_order ASC, ID ASC',
'id' => $post->ID,
'itemtag' => 'dl',
'icontag' => 'dt',
'captiontag' => 'dd',
'columns' => 3,
'size' => 'thumbnail',
), $attr));
[/code]

Vervang door:
[code php]
extract(shortcode_atts(array(
'orderby' => 'menu_order ASC, ID ASC',
'id' => $post->ID,
'itemtag' => 'dl',
'icontag' => 'dt',
'captiontag' => 'dd',
'columns' => 2,
'size' => 'medium',
), $attr));
[/code]

[hr]

XHTML Valid

Blijkbaar is de gallery functionaliteit niet XHTML valid, dus heb ik dit maar meteen opgelost. Daarvoor zijn de volgende wijzigingen nodig:
Open wp-includes/media.php en zoek:
[code php]
$output = apply_filters('gallery_style', "
<style type='text/css'>
.gallery {
margin: auto;
}
.gallery-item {
float: left;
margin-top: 10px;
text-align: center;
width: {$itemwidth}%; }
.gallery img {
border: 2px solid #cfcfcf;
}
.gallery-caption {
margin-left: 0;
}
</style>
<! see gallery_shortcode() in wp-includes/media.php >
<div class='gallery'>");
[/code]

Vervang door:
[code php]
$output = apply_filters('gallery_style', "

<! see gallery_shortcode() in wp-includes/media.php >
<div class='gallery'>");
[/code]

In het zelfde bestand, zoek:
[code php]
$output .= "
<br style='clear: both;' />
</div>\n";
[/code]

Vervang door:
[code php]
$output .= "
<br style='clear: both;' />
</div>
<p>\n";
[/code]

Verder moet je dan helemaal onderaan het style.css bestand van je thema het volgende toevoegen:
[code php]
/* Fix for WordPress gallery */
.gallery {
margin: auto;
}
.gallery-item {
float: left;
margin-top: 10px;
text-align: center;
width: 50%;
}
.gallery img {
border: 2px solid #cfcfcf;
}
.gallery-caption {
margin-left: 0;
}
[/code]

30/01/2010, 11:25:
De voorlaatste wijziging is niet meer nodig, aangezien de steno dit oplost.