Media Library not showing thumbnails

A client is having trouble with the media library. First, whenever she tried to upload an image, it would upload but no image would show in the media library. Now, ALL the images in the library display only a generic image so you can't tell one from another.

I've tried deactivating all plugins, changing permissions on both the uploads folder and all the files. Nothing.

Help?

http://www.easylunchboxes.com/blog

  • ProSapien
    • The Crimson Coder

    Hi Ashok. As I noted in the original question, I have already tried deactivating all the plugins. It didn't resolve the issue.

    In addition, I changed the uploads folder to 755 and the actual files to 644 per the directions on wordpress.org, etc. But that didn't help, either.

  • Imperative Ideas
    • HummingBird

    Qualifying questions:

    1. Have you recently changed domains or hosts?
    2. Is this a new server?

    This sort of behavior typically occurs in WordPress in any one of a very few circumstances. Most likely, your image path is wrong. In that case it was either previously set, or recently set to a custom location using something like this:

    define( ‘UPLOADS’, ‘wp-content/’.’mynewupload’ );

    You can gain a bit of GUI control over the path options using this plugin: https://wordpress.org/plugins/wp-original-media-path/

    The other option is that something in your .htaccess is wrong. Reset it to the following:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /blog/
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    (Note: if you find this later, I added /blog/ instead of the default / because of this specific install. Don't copy that without changing it to match your site)

    If your .htaccess was already default - well it wasn't that either.

    The final option is that something has gone wrong in Apache. You can test this by migrating the site to another server, or your local host if you have XAMPP, WAMP, or MAMP installed. You'll want to use WP Migrate DB to change the domain & path settings but from there it's just a matter of downloading files and setting the new database permissions.

    If the site doesn't have this problem on a different server, then the web host has an Apache setup that has become incompatible with WordPress. Generally when I see web hosts named things like "Hosting 4 Less" (your hosting profile) , mental alarm bells go off.

    Also, wow, NetObjects Fusion runs the root site? Holy smokes, I haven't heard that name in over a decade.

  • ProSapien
    • The Crimson Coder

    Thanks for the responses. I'm working through them.

    1. Have you recently changed domains or hosts?

    No.

    2. Is this a new server?

    No.

    Most likely, your image path is wrong. In that case it was either previously set, or recently set to a custom location using something like this:

    The client doesn't even have FPT access to the site, so she has definitely not modified the files.

    There used to be a paths field on the settings>media page (I've read multiple solutions to this problem that recommend resetting that) but I can't see that anymore.

    If your .htaccess was already default - well it wasn't that either.

    The blog .htaccess file is the default.

    Generally when I see web hosts named things like "Hosting 4 Less" (your hosting profile) , mental alarm bells go off.

    Yes, this is NOT my host. My client set up her site with a blog in another directory before I started helping her with various things. I have the same bells. :disappointed:

    What does the .htaccess say on the root site?

    ErrorDocument 404 /contact/website/not_found.htm
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\.easylunchboxes\.com
    RewriteRule ^(.*)$ http://www.easylunchboxes.com/$1 [R=301,L]
    php_flag zlib.output_compression off
    
    RewriteCond %{REQUEST_FILENAME}.htm -f
    RewriteCond %{REQUEST_URI} !/$
    RewriteRule (.*) $1\.htm [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.+)/$ /$1 [R=301,L] 
    
    # enable expirations
    ExpiresActive On
    # expire GIF images after a week in the client's cache
    ExpiresByType image/vnd.microsoft.icon A604800
    ExpiresByType text/css A604800
    ExpiresByType image/gif A604800
    ExpiresByType image/png A604800
    ExpiresByType image/jpeg A604800
    ExpiresByType application/x-javascript A604800
    ExpiresByType application/x-shockwave-flash A604800
    ExpiresByType text/javascript A604800
    ExpiresByType application/javascript A604800

    Technically, all he needs to do (in that case) is re-upload the core. Starting from scratch would be overkill.

    I can only find info on uploading the core that are very old, not sure if they are applicable. Can anyone explain how to do this and/or link to a current tutorial?

    Thanks

  • Imperative Ideas
    • HummingBird

    All that means is this.

    1. Download WordPress [direct link to latest build]
    2. Extract the files to your desktop
    3. Delete the extracted copy the wp-content folder (not part of the core)
    4. Delete wp-config-sample.php (not needed)
    5. Upload the remaining files to the root of your site

    The only addition step would be to potentially delete every file from the server that isn't listed above, although you want to also avoid deleting things like the /cgi-bin/ directory and .htaccess. Also, don't touch wp-config.php

    Easier just to upload than to selectively delete unless there is an actual malware infection.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.