it-swarm-eu.dev

Může Wordpress změnit velikost BMP soubory?

Zajímavá situace jsem právě narazil.

Mám web, který vyvíjím a ve kterém jsem definoval konkrétní velikosti obrázků, které chci vytvořit, kdykoli je nahrán nový obrázek. V současné době lze říci, že jsem definoval specifickou velikost miniatury 75x75 a středně velký obraz o velikosti 150x150 pixelů.

Za předpokladu, že budeme pokračovat v nahrávání nového obrazu pomocí vestavěného média uploader bychom očekávali, že Wordpress automaticky nahraje a uloží původní obrázek spolu s dalšími velikostmi obrázků, které jsem zadal v souboru functions.php (v tomto případě 75x75 a 150x150 pixelů).

Výše uvedený příklad je vskutku dokonale funkční a s výsledky jsem velmi spokojen.

Všiml jsem si však, že když vyberete soubor bmp pro nahrání automatické změny velikosti, neproběhne.

Mým cílem je zjistit, kdo jiný si tento problém všiml při pokusu o nalezení řešení tohoto problému. Musím se ujistit, že i když je velký soubor bmp nahrán, kód

the_post_thumbnail( array(50,50), 'class=alignleft' );

zobrazí obraz 50x50 pixelů.

Jen v případě, že má někdo zájem, potvrdil jsem, že tento problém se konkrétně týká obrazu bmp tím, že vezmeme původní obraz bmp a uložíme jej jako soubor jpg a png přes photoshop a poté pomocí správce médií wordpress nahrajeme stejné soubory převedené pomocí photoshop ... V obou případech jsem si všiml, že po nahrání každého převedeného souboru byly přesně stejné obrazy WERE správně změněny.

Měla bych také poukázat na to, že když byl nahrán obraz souboru bmp, skutečné nahrání tohoto souboru DID proběhne ve správci médií pouze původní obrázek (v plné velikosti), který lze vložit do příspěvků a kontrolovat složka pro nahrávání médií také ukázala pouze jeden obrázek.

Jakékoli poradenství, pomoc nebo diagnóza je velmi ceněna!

2
NetConstructor.com

Ne, wordpress nemůže měnit velikost souborů BMP. Dbejte na to, aby nedocházelo k použití souborů BMP na webových stránkách, protože velký počet webových prohlížečů je nemůže zobrazit.

Typy souborů, které podporuje Wordpress a které jsou široce podporovány internetovými prohlížeči, jsou: GIF, JPG a PNG.

Tyto formáty jsou optimalizovány pro použití na internetu, protože komprimují obrazová data. BMP je běžný formát obrazu, ale ne na internetu, protože má velké velikosti souborů.

5
hakre

Toto je od jiného podprocesu s kódem, který umožňuje omezit povolené typy souborů.

add_filter('wp_handle_upload_prefilter', 'yoursite_wp_handle_upload_prefilter');
function yoursite_wp_handle_upload_prefilter($file) {
// This bit is for the flash uploader
if ($file['type']=='application/octet-stream' && isset($file['tmp_name'])) {
$file_size = getimagesize($file['tmp_name']);
if (isset($file_size['error']) && $file_size['error']!=0) {
  $file['error'] = "Unexpected Error: {$file_size['error']}";
  return $file;
} else {
  $file['type'] = $file_size['mime'];
}
}
list($category,$type) = explode('/',$file['type']);
if ('image'!=$category || !in_array($type,array('jpg','jpeg','gif','png'))) {
$file['error'] = "Sorry, you can only upload a .GIF, a .JPG, or a .PNG image file.";
} else if ($post_id = (isset($_REQUEST['post_id']) ? $_REQUEST['post_id'] : false)) {
if (count(get_posts("post_type=attachment&post_parent={$post_id}"))>0)
  $file['error'] = "Sorry, you cannot upload more than one (1) image.";
}
return $file;
}

Kód je podle MikeSchinkel

1
Lars Koudal