I have a new client who has recently had her site migrated to 1and1.com, and since the migration, none of her images will load, along with other assets.

In the Media Library, the path to all of the images display as simply /u/, instead of /wp-content/uploads/:

enter image description here

Likewise for the styles.css, instead of looking for it in the /wp-content/themes/ directory, it's looking in a non-existent /t/ directory.

This has to be intentional. Where would a change like this be made? I've looked in all of the usual places – wp-config.php, functions.php files, etc. – and found nothing.

I've also tried Replace Image, with no success.

Also, what would be the purpose of this?

Thanks in advance!


I found this in the htaccess library, but it doesn't appear to be functioning properly – the images aren't displaying – if that provides a clue:

### Rewrites /u/anything to /wp-content/uploads/anything if file anything exists there
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/wp-content/uploads/$1 -f
RewriteRule ^u/(.+)$ /wp-content/uploads/$1 [L,NS,S=500]

3 Answers 3


Something went seriously wrong here. Is there a chance you can repeat the process on behalf of your client? Try to use Duplicator plugin it really helps with migrations.

Or do a manual mysql dump on old hosting and import the database yourself.

This definitely went wrong during the database migration.

  • No, it's definitely intentional on the former agency's part. Further investigation has revealed that they built all of the pages with a Page Builder plugin, and then removed the plugin. This way, the client can't edit their own pages.
    – Ty Morton
    Commented Jun 14, 2017 at 14:02
  • If you reinstall the plugin yourself, the shortcodes used for page building should work again. As for the other problem(s), They should give you the access to old server, so you can do the transfer yourself. Commented Jun 14, 2017 at 14:12
  • It's finding out which plugin they actually used that is the challenge. Unfortunately, the client had a falling out with the previous agency, so there is no access to old servers or information.
    – Ty Morton
    Commented Jun 14, 2017 at 14:52
  • Any chance Google or Wayback Machine has the site cached? If so you could check the page source to figure out what plugin was enqueued, by checking JS and CSS on the page.
    – WebElaine
    Commented Jun 14, 2017 at 18:39

According to the comment on your .htaccess, this rule "Rewrites /u/anything to /wp-content/uploads/anything if file anything exists there"

Check with the new hosting, maybe they don't have mod_rewrite Apache module activated.

  • Good suggestion, but already checked that. It's definitely activated, because this works: RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]
    – Ty Morton
    Commented Jun 14, 2017 at 14:00

The solution to the mystery turned out to be that the theme was specifically designed to work with a proprietary content manager on the previous agency's network.

The /u/ and /t/ are actually shortcodes that weren't being resolved because the site was on a different server. Likewise, the PageBuilder is separate from the WP site itself, and can't be accessed externally.

Apparently, that is how this agency locks in its clients.

The only solution appears to be to switch to a different theme.

Thanks for the assist.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.