Pues chico, no me ha servido, no me reconoce el directorio :S ...
 
Pongo el código del timthumb.php de Wordpress, que hace unos thumbnails estupendos, a ver si alguien me puede decir qué insertar y dónde para poder copiar el thumbnail generado en cache y pegarlo con otro nombre para poder llamarlo luego desde la home estática.    
Código PHP:
Ver original- <?php 
- /* 
-     TimThumb script created by Tim McDaniels and Darren Hoyt with tweaks by Ben Gillbanks 
-     http://code.google.com/p/timthumb/ 
-   
-     MIT License: http://www.opensource.org/licenses/mit-license.php 
-   
-     Paramters 
-     --------- 
-     w: width 
-     h: height 
-     zc: zoom crop (0 or 1) 
-     q: quality (default is 75 and max is 100) 
-      
-     HTML example: <img src="/scripts/timthumb.php?src=/images/whatever.jpg&w=150&h=200&zc=1" alt="" /> 
- */ 
-   
- /* 
- $sizeLimits = array( 
-     "100x100", 
-     "150x150", 
- ); 
-   
- error_reporting(E_ALL); 
- ini_set("display_errors", 1);  
- */ 
-   
- // check to see if GD function exist 
-     displayError('GD Library Error: imagecreatetruecolor does not exist - please contact your webhost and ask them to install the GD library'); 
- } 
-   
- define ('CACHE_SIZE', 250);        // number of files to store before clearing cache 
- define ('CACHE_CLEAR', 5);        // maximum number of files to delete on each cache clear 
- define ('VERSION', '1.11');        // version number (to force a cache refresh 
-   
-         "1" => array(- IMG_FILTER_NEGATE , 0),
 
-         "2" => array(- IMG_FILTER_GRAYSCALE , 0),
 
-         "3" => array(- IMG_FILTER_BRIGHTNESS , 1),
 
-         "4" => array(- IMG_FILTER_CONTRAST , 1),
 
-         "5" => array(- IMG_FILTER_COLORIZE , 4),
 
-         "6" => array(- IMG_FILTER_EDGEDETECT , 0),
 
-         "7" => array(- IMG_FILTER_EMBOSS , 0),
 
-         "8" => array(- IMG_FILTER_GAUSSIAN_BLUR , 0),
 
-         "9" => array(- IMG_FILTER_SELECTIVE_BLUR , 0),
 
-         "10" => array(- IMG_FILTER_MEAN_REMOVAL , 0),
 
-         "11" => array(- IMG_FILTER_SMOOTH , 0),
 
-     ); 
- } 
-   
- // sort out image source 
- $src = get_request("src", ""); 
- if($src == '' || strlen($src) <= 3) { 
-     displayError ('no image specified'); 
- } 
-   
- // clean params before use 
- $src = cleanSource($src); 
- // last modified time (for caching) 
-   
- // get properties 
- $new_width         = preg_replace("/[^0-9]+/", "",-  get_request ("w", 0));
 
- $new_height     = preg_replace("/[^0-9]+/", "",-  get_request ("h", 0));
 
- $zoom_crop         = preg_replace("/[^0-9]+/", "",-  get_request ("zc", 1));
 
- $quality         = preg_replace("/[^0-9]+/", "",-  get_request ("q", 80));
 
- $filters        = get_request("f", ""); 
-   
- if ($new_width == 0 && $new_height == 0) { 
-     $new_width = 100; 
-     $new_height = 100; 
- } 
-   
- // set path to cache directory (default is ./tmp) 
- // this can be changed to a different location 
- $cache_dir = '../img/thumbnails_portada/tmp'; 
-   
- // get mime type of src 
- $mime_type = mime_type($src); 
-   
- // check to see if this image is in the cache already 
- check_cache ($cache_dir, $mime_type); 
-   
- // if not in cache then clear some space and generate a new file 
- cleanCache(); 
-   
-   
- // make sure that the src is gif/jpg/png 
- if(!valid_src_mime_type($mime_type)) { 
-     displayError("Invalid src mime type: " .$mime_type); 
- } 
-   
-   
-     // open the existing image 
-     $image = open_image($mime_type, $src); 
-     if($image === false) { 
-         displayError('Unable to open image : ' . $src); 
-     } 
-   
-     // Get original width and height 
-      
-     // generate new w/h if not provided 
-     if( $new_width && !$new_height ) { 
-          
-         $new_height = $height * ( $new_width / $width ); 
-          
-     } elseif($new_height && !$new_width) { 
-          
-         $new_width = $width * ( $new_height / $height ); 
-          
-     } elseif(!$new_width && !$new_height) { 
-          
-         $new_width = $width; 
-         $new_height = $height; 
-          
-     } 
-      
-     // create a new true color image 
-     // Create a new transparent color for image 
-     // Completely fill the background of the new image with allocated color. 
-     // Restore transparency blending 
-   
-     if( $zoom_crop ) { 
-   
-         $src_x = $src_y = 0; 
-         $src_w = $width; 
-         $src_h = $height; 
-   
-         $cmp_x = $width  / $new_width; 
-         $cmp_y = $height / $new_height; 
-   
-         // calculate x or y coordinate and width or height of source 
-   
-         if ( $cmp_x > $cmp_y ) { 
-   
-             $src_w = round( ( $width / $cmp_x * $cmp_y ) ); 
-             $src_x = round( ( $width - ( $width / $cmp_x * $cmp_y ) ) / 2 ); 
-   
-         } elseif ( $cmp_y > $cmp_x ) { 
-   
-             $src_h = round( ( $height / $cmp_y * $cmp_x ) ); 
-             $src_y = round( ( $height - ( $height / $cmp_y * $cmp_x ) ) / 2 ); 
-   
-         } 
-          
-         imagecopyresampled( $canvas, $image, 0, 0, $src_x, $src_y, $new_width, $new_height, $src_w, $src_h ); 
-   
-     } else { 
-   
-         // copy and resize part of an image with resampling 
-         imagecopyresampled( $canvas, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height ); 
-   
-     } 
-      
-         // apply filters to image 
-         $filterList = explode("|", $filters); 
-         foreach($filterList as $fl) { 
-             $filterSettings = explode(",", $fl); 
-             if(isset($imageFilters[$filterSettings[0]])) { 
-              
-                 for($i = 0; $i < 4; $i ++) { 
-                     if(!isset($filterSettings[$i])) { 
-                         $filterSettings[$i] = null; 
-                     } 
-                 } 
-                  
-                 switch($imageFilters[$filterSettings[0]][1]) { 
-                  
-                     case 1: 
-                      
-                         imagefilter($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1]); 
-                         break; 
-                      
-                     case 2: 
-                      
-                         imagefilter($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1], $filterSettings[2]); 
-                         break; 
-                      
-                     case 3: 
-                      
-                         imagefilter($canvas, $imageFilters[$filterSettings[0]][0], $filterSettings[1], $filterSettings[2], $filterSettings[3]); 
-                         break; 
-                      
-                     default: 
-                      
-                         imagefilter($canvas, $imageFilters[$filterSettings[0]][0]); 
-                         break; 
-                          
-                 } 
-             } 
-         } 
-     } 
-      
-     // output image to browser based on mime type 
-     show_image($mime_type, $canvas, $cache_dir); 
-      
-     // remove image from memory 
-      
- } else { 
-   
-         displayError("image " . $src . " not found"); 
-     } else { 
-         displayError("no source specified"); 
-     } 
-      
- } 
-   
- /** 
-  *  
-  */ 
- function show_image($mime_type, $image_resized, $cache_dir) { 
-   
-     global $quality; 
-   
-     // check to see if we can write to the cache directory 
-     $is_writable = 0; 
-     $cache_file_name = $cache_dir . '/' . get_cache_file(); 
-   
-     if (touch($cache_file_name)) { 
-          
-         // give 666 permissions so that the developer  
-         // can overwrite web server user 
-         chmod ($cache_file_name, 0666); 
-         $is_writable = 1; 
-          
-     } else { 
-          
-         $cache_file_name = NULL; 
-         header ('Content-type: ' . $mime_type); 
-          
-     } 
-   
-     switch ($mime_type) { 
-      
-         case 'image/jpeg': 
-             imagejpeg($image_resized, $cache_file_name, $quality); 
-             break; 
-          
-         default : 
-             $quality = floor ($quality * 0.09); 
-             imagepng($image_resized, $cache_file_name, $quality); 
-              
-     } 
-      
-     if ($is_writable) { 
-         show_cache_file ($cache_dir, $mime_type); 
-     } 
-   
-      
-     displayError ("error showing image"); 
-   
- } 
-   
- /** 
-  *  
-  */ 
- function get_request( $property, $default = 0 ) { 
-      
-     if( isset($_REQUEST[$property]) ) { 
-      
-         return $_REQUEST[$property]; 
-          
-     } else { 
-      
-         return $default; 
-          
-     } 
-      
- } 
-   
- /** 
-  *  
-  */ 
- function open_image($mime_type, $src) { 
-   
-      
-      
-          
-     } elseif (stristr($mime_type, 'jpeg')) { 
-      
-         @ini_set ('gd.jpeg_ignore_warning', 1); 
-          
-     } elseif (stristr ($mime_type, 'png')) { 
-      
-          
-     } 
-      
-     return $image; 
-   
- } 
- ?>