Nedávno se vyskytl jednomu mému známému zajímavý problém. Pokoušel se nahrát do WordPress poměrně velký obrázek. Jednalo se o panoramatickou fotku ve formátu JPG, která měla přes 4 MB.

WordPress standardně vytimeoutoval na max_execution_time. Na podpoře zahraničního hostingu v tomto případě nechtěli moc pomoct a doporučili ať si nahraje obrázek přes FTP, s tím, že nahrávání takto velkých obrázků není ideální řešení.

Konverzace však byla poměrně komplikovaná (kvůli angličtině) a nedopadla zrovna dvakrát dobře. Rozhodl se totiž přesvědčit podporu, že jeho obrázek „je optimalizovaný pro web“. Sám totiž několikrát „snížil“ kvalitu, aby se na 4 MB dostal. Další komprese už ale obrázek „ničila“. Takže se známý obrátil na mě s tím jestli bych mu ty technické pojmy nepřeložil a případně pomohl sepsat email pro vedení společnosti, protože taky dělám v oboru.

Samozřejmě mi to nejdříve přišlo divné, že by hosting nezvládl nahrát 4 MB za 30 vteřin. Navíc se většinou zasekne nahrávání spíše na upload_max_filesize anebo post_max_size, kde administrátor na novém webserveru zapomene tyto hodnoty navýšit (defaultně jsou 2 MB). Na sdíleném webhostingu tyto limity ovšem bývají nastavené poměrně štědře. V tomto tedy problém nebyl.

Ti zkušenější asi tuší, že problém s nahráváním velkých obrázků, které končí vypršením času (max_execution_time anebo na memory_limit), není v samotné velikosti souboru, ale rozlišení. To nahrávané panorama mělo moc tisíc pixelů na několik tisíc pixelů, což nezvládl zpracovat samotný WordPress v časovém limitu. Vše se zasekávalo při zpracovávání obrázku (vytváření náhledů).

Jestliže potřebujete nahrát takto velký soubor „do WordPress“ budete jej muset nahrát opravdu přes FTP a do WordPress pak jeho menší verzi jako náhledový obrázek. Většina webhostingů dnes má nějaký webFTP. Tedy FTP klienta přímo v prohlížeči. Zkuste se podívat do jejich nápovědy anebo projít administraci.

Takže pokud vám někdy nepůjde nahrát velký obrázek do WordPress, nemusí to být tím že má hodně MB ale prostě jeho velikostí v pixelech. Teoreticky by bylo možné to řešit navýšením parametrů, ale otázkou je proč? Momentální 4K monitory zvládnou 3840 x 2160 pixelů a pak se na nich musí scrollovat, což je nepohodlné. Takovéto obrázky mají i hodně MB což už na pomalejším internetu je znát a návštěvníci, co surfují na mobilu stále u nás dost platí za data.

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInBuffer this page