Always setup your wordpress in a subdirectory. Once the entire site is completed and you are ready to go live, setup your pretty permalinks:
Navigate to Settings > Permalinks > Custom and enter
/%category%/postname%/
and save your changes..(this will create a .htaccess folder in the directory where your wordpress blog files currently reside.
Now ftp your entire site into a backup folder (in my case under client content backup+date)
Once the entire site is backed up upload your index.php and the .htaccess (from where you have just backed up your blog on your local computer) to the root of your site, generally public_html . So now these files reside in both the root of your site as well as in the subdirectory with the wordpress files.
In the backend of your site navigate to Settings > General and change the urls for the WordPress address to point to the subdirectory where your entire blog resides (in my case generally http://www.yourdomain.com/blog ) unless this is already the case.
In the Site adress (URL) change the url to point to the primary domain name of the site, example http://www.yourdomain.com
Save changes.
Now open up the index.php in your local computer, the one you have just backup up. Change the following line:
require(‘./wp-blog-header.php’);
to the following, using your directory name where your WordPress files are all stored. In this example the directory name is blog. Your directory name may be different.
require(‘./blog/wp-blog-header.php’);
Save and upload and overwrite the one you have already uploaded into root directory (public_html) of your site (not the subdirectory where the wordpress files are stored).
Head on over to the backend of the site; Settings > Permalinks > and save this again. THis will update the permalink structure. You may use the primary domain name to find your site and the subdirectory name will nolonger be visible in your urls.
Well Done. You have just done a pretty nifty little trick.
If you run into any issues, here is another great tutorial with a slightly different slant. Read away: http://frobert.com/en/2011/02/04/wordpress-subdirectory/ .
These instructions have only been tried and tested with a blog that was originally created in a subdirectory. If you started your blog in your root directory then refer to the WordPress.org help files here: http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory
Please feel free to add to this post with helpful information.
Thanks for reading.