TimThumb doesn’t work with WordPress Multisite

06 September 2011 by Rick ~ 2 Comments 1156 views

I’ve created a WordPress Multisite usin the sub-folder method.

  • site_name.com
  • site_name.com/es

The theme has the TimThumb script for image resizing.

Then I found a problem. My second site (es) was not loading any images.

  • site_name.com/wp-content/uploads/2011/09/05/image.jpg
  • site_name.com/wp-content/es/files/2011/09/05/image.jpg

WordPress builds a cool link for the “es” site but it doesn’t work if you use it with TimThumb.

If you open your FTP client you would find the file under:

/wp-content/blogs.dir/BLOG_ID/files/2011/09/05/image.jpg

That’s the path you will have to use with TimThumb.

Something like this:

function get_image_path ($post_id = null) {
    if ($post_id == null) {
        global $post;
        $post_id = $post->ID;
    }
    $theImageSrc = get_post_meta($post_id, 'Image', true);
    global $blog_id;
    if (isset($blog_id) && $blog_id > 0) {
        $imageParts = explode('/files/', $theImageSrc);
        if (isset($imageParts[1])) {
            $theImageSrc = '/blogs.dir/' . $blog_id . '/files/' . $imageParts[1];
        }
    }
    return $theImageSrc;
}

Subscribe by E-mail:

« »

2 Comments

  1. Can you advise on how to modified the code to get it work on a WP Multisite that’s using the sub-domain method?

    Thanks.

     

Add a Comment

Use [code] example piece of code [/code] to insert code into your comment.