WordPress może wykorzystywać kompresję do zmniejszania rozmiarów obrazków Twojej witryny internetowej. Dzięki temu są one szybciej pobierane, co poprawia czas wczytywania twojej witryny internetowej.
Jeśli jednak twoje obrazki są zbyt mocno skompresowane, mogą wyglądać na mniej ostre lub niższej jakości. Nie zrobi to najlepszego wrażenia na odwiedzających twoją witrynę internetową.
Niedawno jeden z naszych czytelników zapytał, czy możliwa jest zmiana ustawień kompresji dla obrazków JPEG w WordPressie. Odpowiedź brzmi: tak.
W tym artykule pokażemy, jak zwiększyć lub zmniejszyć kompresję obrazów JPEG w WordPressie, aby znaleźć idealną równowagę między jakością obrazków a szybkością witryny internetowej.
Dlaczego warto zmienić kompresję obrazków WordPress JPEG?
Za każdym razem, gdy przesyłasz obrazek JPEG na swoją witrynę internetową WordPress automatycznie kompresuje go do jakości 90%. W WordPress 4.5 liczba ta została zmniejszona do 82%, aby poprawić wydajność witryny dla użytkowników mobilnych.
Jeśli jesteś fotografem, który chce prezentować wysokiej jakości obrazki na twojej witrynie internetowej, możesz wyłączyć kompresję obrazków w WordPress.
Jak wyłączyć kompresję obrazków w WordPress?
Wszystko, co musisz zrobić, to wkleić poniższy kod do pliku functions. php twojego motywu ręcznie lub za pomocą wtyczki fragmentu kodu, takiej jak WPCode (zalecane).
Jeśli nie robiłeś tego wcześniej, możesz zapoznać się z naszym przewodnikiem na temat dodawania własnego kodu do twojej witryny internetowej WordPress.
Najpierw należy zainstalować wtyczkę WPCode Free Plugin. Aby uzyskać więcej informacji, zobacz nasz przewodnik krok po kroku, jak zainstalować wtyczkę WordPress.
Po włączaniu, musisz przejść do Code Snippets ” + Add Snippet w twoim kokpicie WordPress. Następnie należy najechać kursorem myszy na szablon „Dodaj własny kod”, a następnie kliknąć przycisk „Użyj fragmentu kodu”.
Spowoduje to przejście do nowego ekranu, na którym można utworzyć własny fragment kodu. Musisz dodać tytuł do fragmentu kodu, na przykład „Wyłącz kompresję obrazków w WordPress”.
Następnie należy wybrać „PHP Snippet” z menu rozwijanego Rodzaj kodu, a następnie wkleić poniższy fragment kodu w panelu „Podgląd kodu”.
add_filter('jpeg_quality', function($arg){return 100;});
Po ustawieniu wartości 100 WordPress będzie kompresował obrazek w najwyższej jakości.
Na koniec należy kliknąć przełącznik u góry ekranu z „Nieaktywny” na „Aktywny”, a następnie kliknąć przycisk „Zapisz fragment kodu”.
Gratulacje, wyłączyłeś kompresję JPEG na twojej witrynie WordPress.
Jeśli nie jesteś fotografem lub artystą, prawdopodobnie nie zauważysz dużej różnicy w jakości. Jednak dla tych, którzy na co dzień pracują z wysokiej jakości obrazkami, różnica w jakości jest oczywista.
Jak zwiększyć kompresję obrazków w WordPress?
Pozostawienie jakości kompresji na niezmienionym poziomie zdecydowanie korzystnie wpływa na wydajność. Ale jeśli chcesz, możesz zmienić liczbę ze 100 na 80 lub coś niższego, aby bardziej skompresować twoje obrazki i zaoszczędzić trochę miejsca.
Wystarczy utworzyć nowy fragment kodu WPCode, tak jak w poprzedniej metodzie, a następnie wkleić poniższy kod:
add_filter('jpeg_quality', function($arg){return 75;});
Po włączaniu fragmentu kodu i zapisaniu go, twoje obrazki JPEG zostaną skompresowane do mniejszych rozmiarów. Obrazki będą wyświetlane w niższej jakości, ale zaoszczędzisz miejsce na twoim serwerze WWW.
Wskazówka: Po wprowadzeniu tych zmian w jakości obrazków należy również zregenerować twoje miniaturki.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak zmienić kompresję obrazków JPEG w WordPress. Możesz również zapoznać się z naszym przewodnikiem na temat prawidłowego dodawania obrazków w WordPressie lub z naszą ekspercką listą najlepszych wtyczek Instagram WordPress.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Tom
I tried this so many times, and many different variations of this code but it never works. I don’t know what else to do. Every time I upload a photo, I can see that the quality is blurrier. Do you have any other tips?
WPBeginner Support
Please ensure you do not have any other plugins that compress/optimize your images as that is the most common reason the images would be compressed. The other common reason would be if your theme is resizing the images in which case we would recommend taking a look at our article below!
https://www.wpbeginner.com/beginners-guide/wordpress-image-sizes-beginners-guide/
Administrator
Tom
Thanks for the reply. Just an update: It turns out it was my hosting company that was compressing my photos. They had a CDN feature that was automatically enabled that I didn’t know about. After I disabled it, my photos are fine now.
Purnendu Mukherjee
Hi,
If we use a image compression plugin like Smush, Optiomole or any other, will my images be compressed twice (once by WordPress and then by the plugin)??
WPBeginner Support
You would want to check with the support for the plugin you plan to use but most should have the ability to cancel the standard compression.
Administrator
Rigsby
Hello, once the php is added, will that override any image compression plugin that is installed at a later date or does the plugin override the code? It will be hard to remember that your php was once added a long time ago, and therefore it may cause headaches wondering why the plugin isn’t working correctly.
Thanks : )
Tom
” If you want, you can change the number from 100 to 80 or something lower… then all you have to do is paste the following code:”
ADD THE CODE WHERE???
WPBeginner Support
As with the code above, you would place it in your theme’s functions.php or a site-specific plugin. To protect from theme updates we would normally recommend a site-specific plugin:
https://www.wpbeginner.com/beginners-guide/what-why-and-how-tos-of-creating-a-site-specific-wordpress-plugin/
Administrator
rob
Hi – Do images need to be reuploaded for it to take effect?
Also, will this work for png images or do I need to change jpeg to png in the php code?
Thanks
WPBeginner Support
This would only apply to new images and not your current images and you do not have to worry about PNG compression.
Administrator
Netgoondoo
Hi, is this code snippet valid in php 7?
WPBeginner Support
The snippet should still be working
Administrator
puspa chaulagai
hey, I am from love and fun quotes I found your article while I searching for how to stop auto compressing images on WordPress. I try your code but it still not working. When I change the theme it’s work but in which theme I apply it doesn’t work. How to remove auto image compress by theme please help.
WPBeginner Support
You would want to reach out to the support for your specific theme for them to be able to assist with their specific compression.
Administrator
Sukanya
I have not seen much of a difference even after regenerating. Am I missing something?
Heather Wilson
Hello,
I am working with wordpress.com – can you do this through the customizing CSS menu, and if so how? I am brand new to coding.
WPBeginner Support
Hi Heather,
No, you cannot. Please see our guide on the difference between self hosted WordPress.org vs free WordPress.com blog.
Administrator
Karlo Gavric
Even I change compression to 100, my images looks so bad in quality, only if I use full sized (widht 1300+px) is OK, but if I use Large file which is 900px, it is horrible.
I added code to change compression in functions.php, contacted my theme supplier and hosting support, they don’t have any compressions turned on.
Any ideas?
WPBeginner Support
Hi Karlo,
Try deactivating all plugins and switching to a default theme, after that upload a large image and see if that fixes it.
Administrator
Karlo Gavric
Hi,
I’ve tried it, but the problem still persists. Tried also just changing a theme with plugins enabled / disabled, no change (?! feeling confused really ?!)
nospampls
you need to set your large file size to a higher image size. wordpress will automatically crop your images…
Anne
what does this mean
Unable to communicate back with site to check for fatal errors, so the PHP change was reverted. You will need to upload your PHP file change by some other means, such as by using SFTP.
Thank you
Eoin
It means that you need to use an external editor to edit the files because the Wordpress editor is restricted.. There are plugins available for editing theme files through the wordpress admin which you can look up on the Add New Plugin page, otherwize, you need to download your theme files using a FTP software, update the functions.php file and upload it back to the theme folder on the server. If you are not sure about FTP, I would just look for an theme editor plugin so you can do it in the wordpress admin, but make sure to deactivate the plugin when you are finished to prevent any security issues.
Devi Chand
Hi,
My product images looked blurred because they are already optimised and wordpress was optimising them again (I believe). I used the above code and also regenerated the thumbnails. Initially, I could not find the changes. However, later the images started showing up the way I wanted (not blurred, perfect) for some time. But I check again and the images are all looking blurred again. Can you help?
Bjornen
Hi!
So, is there a solution to having WP not up-scaling the image size (kb/mb) when uploading via „Media” in WordPress?
Meaning; I want WP to scale the picture into thumb nail, medium and large and to keep the original as it does per default, but NOT to up-scale the thumb ail, medium or large file sizes?
Thanks!
Mike
I added this code exactly how you showed it and now it won’t let me upload photos an error message keeps coming up. please help! Thanks!
Yara
Hi
Do you know if is possible to improve the quality of the image in wordpress.com in free version?
Thanks
Yara
Or better, if is possible to do not reduce the quality of the image
WPBeginner Support
Hi Yara,
You are limited to how WordPress.com handles images. Please see our guide on the difference between self hosted WordPress.org vs free WordPress.com blog.
Administrator
Yara
Hi
Now I have wordpress.org because I was frustated with my images quality. But now it is worst. I did what your video say, but I still have problems.
I thought that was just upload the image and was OK. My head image and when I upload in the post the quality is not good.
I really don’t know what to do :/
Mélanie
Hi, I use this code and regenerated all my images, but unfortunatly, the size of my image is the same. I use enfold theme and my WP version is 4.7.2. Did I miss a step?
Mélanie
I forgot to say, I compressed to 75.
Luke Cavanagh
Setting the level to 92 or 90 is fine, the default used to be 90 was was lowered down to 82.
Alessandro
Hi, I have added the code as showed in the video but, nothing, Wordpress keeps reducing the size of my images.
Any other option?
Thanks for your support
Alessandro
Lukas Priyambodo
Quality 100 doesn’t always mean highest quality, because of JPEG algorithm and what kind of content of the image. Using SSIM, I sometimes found that quality 95 has better score than quality 100 or at least quality 95 has better filesize trade off compare to quality 100.
Jaime
Hi there. Are you able to disable image compression if you have a free Wordpress account? If so, where do I find my function’s php file?
WPBeginner Support
Please see our guide on the difference between self hosted WordPress.org vs free WordPress.com blog.
Administrator
M.Mairaj
Thanks for sharing such a fantastic post about image Compression in Wordpress. All the tips are really very very worthwhile.
Keep sharing
Regards
Mairaj
Peter
Don’t follow this advice! I added this line of code in my functions.php file and now I get this message when loading my website!
Parse error: syntax error, unexpected T_STRING in /home/sittin11/public_html/wp-content/themes/Divi/core/functions.php on line 44
WPBeginner Support
See our guide on how to fix syntax error in WordPress.
Administrator
blogmann
Thanks
I’m using plugin Imsanity, it has more settings
karl
Let’s clear up some things.
1 – WP does not mess with your original uploaded file. The compression levels discussed are for WP generated images – the TN, Med, Large in your WP media settings.
2 – if you change the compression settings, WP does not reprocess all your current uploads. That’s why you run Regenerate Thumbnails.
3 – I will challenge any photographer to see the quality difference between 100 and 90 in a JPG. In rare cases, you may. But for 99% of images you’ll never tell.
4 – Depending on your theme and your media settings, yes, some smaller image sizes will be cropped from your orignal upload. It’s the nature of the beast. If your TN is square and you upload a horizontal phjoto, of course it will be cropped. Cropping your images BEFORE uploading – and using a proportion compatible with your theme layout – will net you fewer issues.
Santiago Gonzalez
Thanks Karl, your comment was very helpfull to clear things up.
Thanks
chang hong
hello, can you tellme why wp crop every image that i upload? how can i prevent it! thank you
Dave Porter
Thanks for the article, very useful to know.
I’m interested in the comment about 'make sure you regenerate your thumbnails’
If an image is uploaded at say 82%, regenerating the thumbnails does what?
And I assume that after changing the percentage, this is only going to be for new images?
I would guess any existing images would remain at the same quality, or does WordPress keep a copy of the original uploaded?
TIA, Dave
WPBeginner Support
WordPress keeps a copy of the original file uploaded.
Administrator
Michael
Is it possible to disable image compression in WordPress?
The article has a headline saying so, but then it describes it as „least compression”, that is not disabling compression…just wondering it is possible to disable compression for uploaded pictures…
karl
Setting compression to 100 IS disabling it.
Thomas
Great Tips, thank you.
I have one more question: If I upload images to WP that are already compressed (say to 90%) – will they be compressed again (82% of 90% = 74.8%)?
Stephen
Yes. The only exception is the image you upload is saved as is for future use.