- Posts: 2
COMMUNITY FORUM
Image cache questions
- ansi.alpha
- Offline
- New Member
$imgname = $file; replace it with
$imgname = substr($file ,0 ,-4);
Please Log in or Create an account to join the conversation.
- B_Dark
- Offline
- Premium Member
- Posts: 126
ansi.alpha said:
if anyone still need another solution , you might try this.i made it to when i transferred my wordpress to joomla k2 "troublesome".1. make php file at the top of your joomla directory. "anything.php"2.copy and paste the code in it then check it in your browser and wait until it finish loading.3. when it finish loading, change the 2nd parameter of recreateImg function in the while loop with the k2 Width you variable you want.4.if you get error memory limit reach just refresh and it will continue from where it stop."it happens if your image has really high size"5.delete this php file when you are done creating all images you want.
NOTE: this doesn't create md5 names of images but it could with abit coding. and if your imagesdosn't have md5 names,your images wont work in your k2.<?php/** * $XS,$S,$M,$L,$XL,$Generic are k2 widths of new recreateImgd images in px . "you can find them in k2 panel" * you will need them change 2nd parameter of recreateImg function in the while loop after it finish generating files successfully. * probably not the default size setting. * if you change it ,change switch statment numbers to match them. */$XS = 133;$S = 409;$M = 745;$L = 766;$XL = 1066;$Generic = 300;//path to src folder of your images$srcPath = "./media/k2/items/src/";function recreateImg($file, $k2Width){ global $srcPath; $imgPath = $srcPath . $file; $imgname = $file; // if you change k2 widths variables , // you will need to change numbers of each case to match them. switch ($k2Width) { case 133: $size = 'XS'; break; case 409: $size = 'S'; break; case 745: $size = 'M'; break; case 766: $size = 'L'; break; case 1066: $size = 'XL'; break; case 300: $size = 'Generic'; break; } // the new image name and path to save it $save = "./media/k2/items/cache/" . $imgname . '_' . $size . '.jpg'; if (file_exists($save)) { echo $imgname . '_' . $size . '.jpg' . ' :Image exisit! <br/>'; } else { $pic = imagecreatefromjpeg($imgPath); $width = imagesx($pic); $height = imagesy($pic); $ratio = $k2Width / $width; $newHeight = $height * $ratio; $new_image = imagecreatetruecolor($k2Width, $newHeight); imagecopyresampled($new_image, $pic, 0, 0, 0, 0, $k2Width, $newHeight, $width, $height); imagedestroy($pic); imagejpeg($new_image, $save); imagedestroy($new_image); }} // end of function//calling the function while looping each file if its jpg image$folder = opendir($srcPath);while ($file = readdir($folder)) { if (substr($file, -4) == ".jpg") { //you can do images generations 1 size at one time by changing 2nd parameter . recreateImg($file, $XS); }}closedir($folder);?>
Please Log in or Create an account to join the conversation.
- Roberto Céparo
- Offline
- New Member
- Posts: 11
search imagejpeg ($ new_image, $ save);replace imagejpeg ($ new_image, $ save, 100);replace quality by the number of such quality they want. 100 or 75.I'm from Argentina and my site is www.vodok.com.ar and I served
Please Log in or Create an account to join the conversation.
- Russell English
- Offline
- Junior Member
- Posts: 37
Please Log in or Create an account to join the conversation.
- Russell English
- Offline
- Junior Member
- Posts: 37
In the end, I just removed all images (could do this as the images were only placeholder examples on a dev site) from /media/k2/items/cache and /media/k2/items/src
Please Log in or Create an account to join the conversation.
- shenkwen
- Offline
- Junior Member
- Posts: 30
Is there any official notes addressing this?
Please Log in or Create an account to join the conversation.
- Christos Kougkouleris
- Offline
- New Member
- Posts: 5
I have no problem with disk space so when is the problem created? with number of files in cache folder?
Because I created a folder e.g. was_cache and moved a couple hundred of images from cache in there and then the image tab worked again... and after some days the same problem and just moved some images and then again everything worked....
So my question is... if I do whichever of the two solutions with the coding hack, as I do not have space problem will my problem be fixed or is there something else?
Please help me, someone, on this as I do not know where to look at...
Thank you in advance
Please Log in or Create an account to join the conversation.
- BBC
- Offline
- Platinum Member
- Posts: 663
Please Log in or Create an account to join the conversation.
- Krikor Boghossian
- Offline
- Platinum Member
- Posts: 15920
I think this code is a bit outdated. You can simply turn on the Force 'item modified date' as URL timestamp on image paths options on the advanced settings of K2. That way you won't need to clear the cache.
JoomlaWorks Support Team
---
Please search the forum before posting a new topic :)
Please Log in or Create an account to join the conversation.
- BBC
- Offline
- Platinum Member
- Posts: 663
Krikor Boghossian wrote: Hello there,
I think this code is a bit outdated. You can simply turn on the Force 'item modified date' as URL timestamp on image paths options on the advanced settings of K2. That way you won't need to clear the cache.
Please stop spreading misinformations, this wont clean junk from disk. And decide for once if it will be image cache rebuild plugin, or not. It is your script, your own decision, but dont pull peoples legs.
Is there a way to rebuild the #K2 image cache easily? I think I've done and done something daft... #joomla
Reply Retweet Favorite More
1
Retweet
10:57 AM - 8 Sep 12
JoomlaWorks @joomlaworks 11 Sep
@antonydoyle Not really, but we do plan to launch a plugin soon to do just that, provided the source images are kept intact ;)
Details
1
Retweet
7:29 AM - 11 Sep 12 · Details
Please Log in or Create an account to join the conversation.