If you need to migrate your WordPress website, or change the location of your WordPress installation it's good to keep in mind how WordPress keeps track of itself via the WordPress Address and Site Address settings.

These settings can be adjusted directly in the WordPress admin dashboard from Settings >> General or you can make these modifications to your wp-config.php file as well.

WordPress WP_HOME and WP_SITEURL settings

There are 2 WordPress options that you can adjust to change the behavior of how WordPress works.

  • WordPress Address / WP_HOME             The address where your WordPress core files reside.
  • Site Address / WP_SITEURL   The address typed in a browser to reach your WordPress blog.
WordPress Address / WP_HOME Site Address / WP_SITEURL
cPanel File Manager showing WordPress core files Web browser showing WordPress site URL setting
WordPress URL settings in admin dashboard

As you can see from the example above, I have my WordPress core files stored inside my /public_html/wp directory so that they aren't clogging up my root directory.

However I still want people just to type in http://example.com to get to my WordPress site, so I've left that set as my Site Address so WordPress knows this is what I want displayed instead of the core files location.

This is just one example of what can be done with WordPress URL settings. You might also need to modify these settings after moving your WordPress website to a new server, or testing a new structure for your website.

Change WordPress address with wp-config.php file

The easiest way to modify your WordPress URLs is via the wp-config.php file. If you've moved your WordPress site or are trying to test it from a temporary URL, this also might be the only method that works for you.

Be aware with these settings in the wp-config.php file, the ability to modify them from the dashboard is lost.

  1. Edit your wp-config.php file.
  2. Define your WP_HOME and WP_SITEURL settings by inserting these lines towars the top:
    define('WP_HOME','http://yourdomain.com');
    define('WP_SITEURL','http://yourdomain.com');
    
    // ** MySQL settings - You can get this info from your web host ** //

Change WordPress address in admin dashboard

You can also adjust your WordPress URL settings directly from the admin dashboard. This method will typically work if you haven't moved your WordPress installation and aren't having any issues access it.

  1. Login to WordPress admin dashboard
  2. Click on Settings >> General
  3. Fill in your WordPress Address and Site Address and click Save.

Change WordPress address directly in the Database

You can also diretly modify your WordPress URL settings in the WordPress database using the phpMyAdmin tool.

  1. Backup your database in cPanel prior to making changes.
  2. Use phpMyAdmin to manage your WordPress database.
  3. phpMyAdmin select WordPress databaseSelect your WordPress database from the left.
  4. phpMyAdmin select WordPress options tableThen select your wp_options table.

    Your wp_ prefix may differ depending on your install settings.

  5. phpMyAdmin click edit on siteurlClick Edit beside either the siteurl or home entries.
  6. phpMyAdmin update siteurlEnter in your new value in the option_valuie field, then click Go
  7.  

Detect and change WordPress address with RELOCATE

If you're having issues accessing your WordPress dashboard, you can have WordPress automatically try to figure out what the correct WordPress Address should be using the RELOCATE flag in your wp-config.php file.

With the RELOCATE flag set, WordPress will automatically update your WordPress core files path to the URL used to attempt to access the wp-login.php script. This only affects the WordPress dashboard and not the site itself.

  1. Edit your wp-config.php file.
  2. At the top of the file add a define('RELOCATE',true); line:
    define('RELOCATE',true);
    
    // ** MySQL settings - You can get this info from your web host ** //
  3. Now visit your http://example.com/wp/wp-login.php page in your web browser.

    Be sure to type in the path of your WordPress core files before wp-login.php

  4. Log into your WordPress dashboard as you would normally.
  5. If you navigate to Settings >> General, you should now see that WordPress has automatically populated the WordPress Address (URL) field for you, with the path to your WordPress files.
Did you find this article helpful?

We value your feedback!

Why was this article not helpful? (Check all that apply)
The article is too difficult or too technical to follow.
There is a step or detail missing from the instructions.
The information is incorrect or out-of-date.
It does not resolve the question/problem I have.
How did you find this article?
Please tell us how we can improve this article:
Email Address
Name

new! - Enter your name and email address above and we will post your feedback in the comments on this page!

Related Questions

Here are a few questions related to this article that our customers have asked:
wordpress temp URL to correct domain name
Adding a WordPress site to our account
Would you like to ask a question about this page? If so, click the button below!
Ask a Question
2013-06-06 1:25 pm
I would like my display URL to read www.example.com, not example.com. I've changed this in the past, in the General Settings, and my website went away with errors everywhere. All I did was add the "www" to the beginning of each. I couldn't even load the login page. So I'm reluctant to mess with these setting again.

Even with your explanations here, I'm still not sure how these 2 setting work or what their real purposes are. There are two setting WordPress URL and Site URL, you referred to a "Home" URL... is this a third option or is Home the same as WordPress?

Also, If I change these two settings and my site crashes again, do I recover by editing the the wp-config file, or the functions.php file?

I know this shouldn't be this difficult, I just want to add the WWW. Thanks for your help.
Staff
16,770 Points
2013-06-06 1:48 pm
Hello LenEstrada,

Sorry to hear that you're confused and having problems with this issue. I looked it up through the Wordpress.org Forums and found this suggestion:

1) Login to the Wordpress Administrator
2) Click on SETTINGS
3) Click on GENERAL
4) The forum post I read suggests that BOTH of those URLs should be set to use WWW.

Here's the link to the post if you need it: Force WWW in WordPress.

I hope this answers your question! Please let us know if you require any further assistance.

Regards,
Arnel C.
n/a Points
2014-04-13 1:54 am

I have having problem connecting to my admin loginon wordpress, I tried the step above, but I was redirected to my home page instead of my login page

Staff
8,502 Points
2014-04-14 9:06 am
Take a look at the address bar. Did it redirect to another domain from before you changed the site URL?
n/a Points
2014-04-14 2:33 pm

I follow the step above, the issue has been fixed, All I had to do was just to wait for sometime, the wordpress login page was overided with the site login page. All is working fine. Thanks for the help

n/a Points
2014-04-17 1:31 pm

I built a test website using an extension :

www.website.com/test

now I want to move the extension "test" to Website.com

I want the contain of website.com to be what I build under "test"

Staff
9,968 Points
2014-04-17 5:05 pm
Hello Rausty, and thanks for the comment.

You would have two options in order to move WordPress from a subfolder such as example.com/test to just example.com.

You can either move all of your files from the /test directory up one level to your main site's document root. This is the recommended method to ensure that everything with WordPress continues to function properly.

Or you can also just tell WordPress to utilize the files in the /test directory and just copy over 2 WordPress files if you'd like to keep your document root clear of all the WordPress files. This can complicate matters a bit, but you just have to keep in mind when trying to access things like /wp-admin to login to WordPress, you'd still need to use example.com/test/wp-admin.

The first option of simply moving your entire WordPress site from a subfolder to your document root could be completed with these steps:


  1. Login to WordPress

  2. Hover over Settings then click on General

  3. Both your WordPress Address (URL) as well as your Site Address (URL) settings should both say http://example.com/wordpress

    You'll want to change both to just read http://example.com


    Now you'll want to click on Save Changes, but note that as soon as you do WordPress will throw a Error 404 - Not Found error.


  4. Now you'd want to move all of the files and folders from your /test directory to your main document root.



The second option of making your WordPress site accessible from just the document root of your website, while still retaining the bulk of the WordPress files in a /test folder. Could be setup following these steps:


  1. Login to WordPress

  2. Hover over Settings then click on General

  3. Both your WordPress Address (URL) as well as your Site Address (URL) settings should both say http://example.com/wordpress

    Change just the Site Address (URL) to http://example.com


  4. Copy DO NOT MOVE the /test/.htaccess and /test/index.php files to your main document root.

  5. Edit the index.php file now sitting in your document root and change this line:

    require( dirname( __FILE__ ) . '/wp-blog-header.php' );


    To this:

    require( dirname( __FILE__ ) . '/test/wp-blog-header.php' );


    Then save the file and you should be able to access WordPress from your main example.com now.



Please let us know if you had any further questions at all.

- Jacob
n/a Points
2014-05-10 3:22 am

Hi I messed up my site by editing wordpress and site url. followed the above method and I am able to login to WP Dashboard and can see the home page. But none of the other pages are working. Error 404 is being displyed.  my site http://www.thewholehog.com.au/

Please help asap.

Staff
18,686 Points
2014-05-10 9:00 am
Hello Dharamveer,

Thank you for your question. I can see your site now, so it appears you have corrected the URL issue. However, there is an error on your pages reading "Call to undefined function wpsc_is_viewable_taxonomy() in /home/<removed for privacy>/wp-content/themes/nathan/loop.php on line 127 " In researching, there is not much available in the cause and fix of the issue. I did find one instance of the error that was fixed by installing the wp-ecommerce plugin. It seems the function it is calling is tied to that plugin.
Please let us know if that helps.
Kindest Regards,
Scott M
n/a Points
2014-05-10 10:00 am

Hi Scott, Many thanks for the quick response. I just updated the wp-ecommerce plugin and I lost everything including WP_Dashboard.

This is the error message I am getting: Fatal error: Cannot redeclare wpsc_print_product_list() (previously declared in /home/the24064/public_html/wp-content/plugins/wp-e-commerce/wpsc-core/wpsc-deprecated.php:465) in /home/the24064/public_html/wp-content/themes/nathan/functions.php on line 504

Staff
18,686 Points
2014-05-12 12:43 pm
Hello Dharamveer,

You may want to rename the wp-ecommerce plugin from the plugins folder to see if the site functions correctly without it (dashboard, regular posts, etc). If so, then the error is definitely within the wp-ecommerce plugin.

It is possible the theme and the current version of the plugin are fighting. So if it works with the theme turned off, change your theme to another for testing, say one of the defaults, then re-enable the plugin. If that works, then it is the combination of the plugin and theme. Also check to ensure the theme is only installed once in the plugin folder.

Kindest Regards,
Scott M
n/a Points
2014-07-05 3:00 pm

Thanks Very much, My issue is now solved after reading your blog..

n/a Points
2014-07-09 10:07 am

How can i modify the site url on the website hosting by my home server? when i change it to 'localhost',the outside world can't access my website.when i change it to 'http://mydomain.com', i cant get into my website on my server computer. i'm using DDNS services. plz help.

Staff
8,979 Points
2014-07-09 10:46 am
Hello jumbohalo,

Thank you for your question. Depending on your specific setup, you may have to setup Port Forwarding, to resolve to your server.

You may want to also check with your ISP, to ensure they allow incoming connections to port 80 (the standard internet port).

Here is a link to a helpful post on accessing WordPress from localhost AND domain in the official WordPress forums, that is similar to your question.

If you have any further questions, feel free to post them below.
Thank you,

-John-Paul
n/a Points
2014-07-09 11:10 am

thanks for your quick responce. my problen has solved now.

n/a Points
2014-07-16 3:21 pm

Hello,

In 5 years of using wordpress Ive never ran into this problem. When I uploaded my Wordpress site it came out adding a /wp to the address of my site and all pages can only be accessed by adding that to the end of my url. How can I get it to render properly to the true url's without the /wp?

Thanks

Staff
16,770 Points
2014-07-16 7:46 pm
Hello Benjamin,

What happened was that WordPress was installed into the subfolder named WP. You can use the instructions in the tutorial above to use the WordPress Admin to make it so that you don't have to type the "wp" in your URL. You can also move your WordPress installation into the root folder. This is a much more involved process though.

I hope that helps to explain the issue. In either solution, you would not need to include WP in the URL when accessing the site.

Regards,
Arnel C.
n/a Points
2014-07-18 10:04 am

Can you please explain the difference between the original premise of the article --putting Wordpress in a subfolder-- and your second option response to Rausty on 04/17?  I don't see the difference, yet the answers are different. 

Staff
8,502 Points
2014-07-18 10:51 am
The difference in these is moving all of the files versus moving just a few of the files and editing the configuration within WordPress. The choice between these is simply based on preference.
n/a Points
2014-07-29 4:33 am

Thanks to those that put this thread together! I am smiling again... Very nearly had myself a 'hissy' fit!

It was the myPhPadmin solution that did it for me.

n/a Points
2014-08-19 10:41 pm

Hi

I had problems with login to my dashboard after I made a copy of my site.

I tried the fix.

define('RELOCATE',true);
and it worked. But my question is... do I leave it in the file or should I remove it?SincerelyTed
Staff
16,770 Points
2014-08-20 11:15 am
Hello Ted,

You can leave it there, though I would recommend that you remove it after looking to see where the location of your Administrator has been set. The information should be in your Administrator already (as indicated in the article above). If you want to be sure that it is set permanently, use the database option described above to set the location permanently - though WordPress is set to work with the location change in the Administrator settings.

Regards,
Arnel C.
n/a Points
2014-09-01 1:00 pm

My wordpress keeps adding an "s" to the end of my Site Address (URL). Which causes it to redirect. Why would WP do this?

Staff
18,686 Points
2014-09-02 1:56 pm
Hello Bre,

WordPress should not be doing that. Be sure to check your dashboard, then also the wp-config file. If all else fails, check your .htaccess in the root WordPress folder to see if there is a misconfigured setting. It is a bit cryptic, but the code for the rewrite rule would have an extra 's' in it if it is the cuplrit. Removing that would help, if it is there,

Kindest Regards,
Scott M
n/a Points
2014-09-02 2:25 pm

Thank you! I think it was the template I was using. It was changing breroz.com to brerozs.com.

Thank you for answering me. :)

n/a Points
2014-09-10 3:52 pm

Hi,

I need to change WP_SITEURL of my worpress site but is it possible to mantain the original site_url for admin access?es:my domain is www.mydomain.itI'd like to change my site url in: www.mynewdomain.it/projects/

and if I change WP_SITEURL all is ok but I can't to login in admin page: my installation is a multisite

thanks

Staff
8,502 Points
2014-09-10 4:04 pm
Unfortunately, when changing the site URL, it will affect the admin as well. The best solution would be to simply create a redirect from the old location to the new one.

Post a Comment

Name:
Email Address:
Phone Number:
Comment:
Submit

Please note: Your name and comment will be displayed, but we will not show your email address.

27 Questions & Comments

Post a comment

Back to first comment | top

Need more Help?

Search

Ask the Community!

Get help with your questions from our community of like-minded hosting users and InMotion Hosting Staff.

Current Customers

Chat: Click to Chat Now E-mail: support@InMotionHosting.com
Call: 888-321-HOST (4678) Ticket: Submit a Support Ticket

Not a Customer?

Get web hosting from a company that is here to help. Sign up today!