Since blogging is a great tool for promoting personal writing, sharing content, building a community, or even supporting a business, I decided that I would share a (hopefully) simple, but useful walk through of how to set one up using WordPress – and doing so in an efficient manner and in a short amount of time.
(WordPress is a simple, yet powerful blogging platform. It is built in PHP using a MySQL database and it completely configurable. It is my favorite blogging software due to the ease of use and amount of customization.)
Here is an in-depth guide for setting up and installing the blogging software on your own domain, which is my preferred method for running a blog. However, if you do not want to deal with (and paying for) having your own domain and web host, it is possible to set up a free WordPress blog that is hosted at wordpress.com. Most of the information below will still hold true, but some of it may not be relevant.
I. INSTALLATION
-
Download the WordPress software. As of the time of this post, the current version is 2.3.1 and can be found at: http://wordpress.org/download/
-
Unzip and upload those files to your web server. The main decision you have here is where you want your blog software to show up on your domain. For instance, if you already have a website and you are adding the blog to your site, you might add them into a directory called blog off the root of your domain. Your blog would then be accessible at http://www.yourdomain.com/blog. Or, if you would rather the blog be the front page of your domain, you would just upload the files to the root of your domain and it would then be accessible at http://www.yourdomain.com.
-
Find the file wp-config-sample.php in the main WordPress directory. This file must be updated with details that will enable the software to access your database.
Those details are Host Name, User Name, Password, Database Name. You can get these details from your hosting provider (Your hosting configuration panel probably has a way to access PHPMyAdmin which will give you a GUI driven MySQL database management tool).
The items you will need to update are listed below:
define(’DB_NAME’, db_name); // The name of the database
define(’DB_USER’, ‘yourusername’); // Your MySQL username
define(’DB_PASSWORD’, ‘yourpassword’); // …and password
define(’DB_HOST’, ‘localhost’); // 99% chance you won’t need to change this value
define(’DB_CHARSET’, ‘utf8′);
define(’DB_COLLATE’, ”);
-
Once this file has been updated with the correct information, it must be renamed to wp-config.php. This file will drive the installation of the software in the next step. If the details in this file are incorrect, the installation step will fail and you will have to modify this file with the correct details.
-
Visit http://www.yourdomain.com/wp-admin/install.php in your browser. This will start the WordPress installation and it should be relatively quick and painless.

-
If you see the following screen, then the initial set up is done and the blog has been installed successfully. Input the Name of your blog and your email address. Both of these items can be changed at a later date.

II. CONFIGURATION
Users Section
The next steps will be to configure the blog settings, look and feel, and other functionality. This is the navigation component that you will use to jump to various sections of your blog. (If you ever want to get to the admin section of your blog, go to http://www.yourdomain.com/wp-admin.

-
Click on the USERS link on the main navigation. (I recommend setting your admin user information first.)
-
Click the edit link to edit the admin account’s details. I would suggest putting in your name (you can choose to not have it displayed). You can control how your name shows up on posts by yourself by clicking on the “Display name publicly as:” dropdown menu. I would also suggest changing your password to something other than the random password that was set for you during the install process.
Options Section
-
Click on the OPTIONS link on the main navigation.
-
We’ll start out on the default “General” sub navigation section.
-
Blog Title – Enter the title of your blog if you haven’t already. This will generally show up in the Header of the site and the <title></title> tags of the site.
-
Blog Tagline – Enter a tagline (optional). This will generally show up in the header and is used to provide a descriptive tagline for your site.
-
WordPress Address – This will set the base URL for your site. I usually like to include the www in front of my domain name so that there are no search engine problems (sometimes search engines view domain.com and www.domain.com as different sites, which is not ideal).
-
Membership – Here you can set some controls on who can register and comment on your blog discussions. This is up to you and it depends on the privacy level that you wish to have for your site.
-
Click on the sub navigation item “Writing”
There are a few options here, but the default settings are probably OK for now. The one thing we want to change is the list of sites under “Update Services” at the bottom of the page.
After reading some discussion on the subject, I have added in additional pinging services to ensure that all of my new blog posts are properly notifying the blog sites out there.
-
Click on the sub navigation item “Reading”
-
Front Page Displays – These settings let you configure what is on the front page of your blog and what page is considered the “Posts” page. For instance, you could set your front page to be a static page that says what your blog is and what it is about, then have a secondary page be the one that displays your posts. At this point, you should probably leave these settings as the default, but you may want to return later to make changes.
-
Show at Most – This setting will configure how many posts appear on your front page before a visitor is presented with a Next Page / Previous Page links. Depending on the length of your posts, you may want this number to be higher or lower than the default.
-
Click on the sub navigation item “Discussion”
These settings give you complete control over whether users can post comments, what information they must provide, whether comments are moderated (for increased privacy and security), etc. You should configure these options based on how you wish to use your blog and private/secure you want it to be.
-
Click on the sub navigation item “Permalinks”
Permalinks control how the URLs of your posts look to visitors and search engines. I usually choose the radio button for “Date and Name based” which makes your URLs most friendly to users and search engines. By making this change, your posts will look like much nicer and be more readable.
Example: www.yourdomain.com/?p=123 vs. www.yourdomain.com/2007/11/15/sample-post/
-
Click on the PLUGINS link on the main navigation.
- Akismet – This plugin comes installed with WordPress and is designed to help stop spam on your blog. It is by far the most important plugin that you can install (assuming you will have comments open on your posts).
In order to finalize the installation, you must first click the Activate link. You should now have another option on the Plugins sub navigation menu.
-
Click the “Akismet Configuration” link on the sub navigation.
-
Sign up for a WordPress API Key at: http://wordpress.com/api-keys/ and input that into the Akismet Configuration.
- Database Backup – This plugin will automatically backup your WordPress database and either save it to your server or email it to you. This will ensure that your content and settings are preserved and will not be lost due to any system problems or database issues.
-
Download the plugin at this link.
-
Unzip the file and FTP upload the contents to the /wp-content/plugins/ directory of your site
-
Return to the PLUGINS menu in WordPress
-
Click the Activate link next to WordPress Database Backup.
You can now access the options for this plugin by clicking on the MANAGE button on the main navigation followed by the “Backup” link on the sub navigation OR by going to: yourdomain.com/wp-admin/edit.php?page=wp-db-backup
-
Scroll to the bottom of the page and input your email address and frequency you would like for backups, then click Submit and you are done. Your data will now be backed up on an ongoing basis.
- Google Sitemaps Generator – This plugin will create a Google Sitemap for your blog. The sitemap will help increase search engine spiderability and can be analyzed via Google Webmaster Tools (should you choose to sign up and use their FREE service).
-
Download the plugin at this link.
-
Unzip the file and FTP upload the contents to the /wp-content/plugins/ directory of your site
-
Return to the PLUGINS menu in WordPress
-
Click the Activate link next to Google Sitemap Generator.
You can now access the options for this plugin by clicking on the OPTIONS button the main navigation followed by the “XML-Sitemap” link on the sub navigation OR by going to: yourdomain.com/wp-admin/options-general.php?page=sitemap.php
-
The settings should be correct for typical use, but you are welcome to make any changes. Once you are happy with the changes, there is a link to Build your sitemap for the first time in the Status box at the top of the page.
-
Click the link to build your sitemap and you are done.
Presentation (Look & Feel) Section
-
Search for a new theme at the WordPress Theme Viewer. You can download as many as you like.
-
Once finished, upload them to the /wp-content/themes directory via FTP. You will be able to change them at will from within your blog’s administration portal.
-
Click on the PRESENTATION link on the main navigation.
-
You should see the themes that we just uploaded listed on this page. You can select a new theme template by clicking on the thumbnail of the theme shown under Available Themes. Once you have selected your theme, this will be our starting point for modifications.
-
Now that you have chosen a theme, you can either click “View Site” to see what it looks like in its rawest/basic form or you can click “Theme Editor” on the sub navigation.
The Theme Editor page lets you view and/or update any HTML, CSS, or PHP pages associated with your theme. You have complete control over the layout, style, and functionality of the site. For in dept details about how to configure the functionality of your site, please read the WordPress Codex.
-
Most themes come configured for instant use and public consumption. However, you may want to make changes to the colors or layout of your site. These changes will be made here. If you wanted to change the color of the regular body text throughout your site, you would click on the Stylesheet or “style.css” file on the right. This will cause the file to be displayed in the text editor where you can make changes. This will require knowledge of CSS to affect the changes. Read this for a definition/overview of what CSS is.
-
Likewise, you could replace the images that make up the theme with ones that you have created. You would need to upload these files to the theme directory in /wp-content/themes/themename/ and then you can reference them in the CSS. Virtually all non-layout, non-functionality changes can be made via the CSS Stylesheet.
-
However, if you want to change the layout or functionality of the site, you will need to make changes to the individual PHP files that make up the theme. These files include the Main Index Template, Header, and Footer (plus any other pieces, depending on the theme you have chosen). Inside these files, you can change the HTML, which can affect the layout or change or add in PHP scripting to affect the functionality of the site. Changes of this nature should only be made by advanced users or after you have a very good feel for how your theme works. Incorrect changes or additions to these files could adversely affect your site and its display.
- Let’s walk through one hypothetical (and simple) change. Say you wanted to add additional descriptive keywords to your site’s title. First, you would click on the Header file listed on the right. Once it was showing in the text editor, you would look for the piece that says something like:
<title><?php bloginfo(’name’); ?> | <?php wp_title(); ?></title>
What this is doing is displaying your Blog’s name (as listed in the options that we configured earlier) and the title of the post or page that is being displayed. With a simple change, we could add our descriptive keywords to every title tag throughout the site like so:
<title><?php bloginfo('name'); ?> | <?php wp_title(); ?> | Keyword1 Keyword2 Keyword3 Keyword4 </title>
Really, the sky is the limit once you understand how the theme you are using is built and once you understand how CSS affects the styling and layout of the site. But for now, time to move on!
Blogroll Section
- Click on the BLOGROLL link in the main navigation.
- The blogroll is a set of links that display in the sidebar of your site. You can add, edit, and delete them here.
Since a blog is a social tool meant to foster discussion, it is recommended that you link to your favorite blogs here. Hopefully, in the future, others will be adding your blog to their own blogroll.
Manage Section
- Click on the MANAGE link in the main navigation.
- From this menu, you will be able to update, edit, and delete your posts, pages, categories, and other details.
Since your blog is new, you don’t really have much to do here at the moment. Once you are comfortable with your site and you write your first posts and pages, you will want to return to this page and delete the temporary post that comes with your blog – entitled “Hello World!”
- If you know what your blog is going to be about and what some of the general categories that your posts may fall into are, you can click on the “Categories” link on the sub navigation.
- If you don’t know what categories you might use, don’t worry. You can always return to this page or add new categories on the fly while you are writing a post.
And… that’s it. Your very own blog is now complete and configured using some best practices for usability and search engine optimization. Once again, the sky is really the limit. You can affect all aspects of your blog, so your creativity (and web design know-how) is really the deciding factor in what is possible and what isn’t.
III. USING YOUR NEW BLOG
Writing Content
- Click on the WRITE link in the main navigation.
- To Write a Post, click on the sub navigation “Write Post” link.
Posts are the meat and potatoes of your site. This is where most of your blog’s content will come from. Each post you write can contain HTML (the visual editor will help you, if you need it) and images (which you can upload by following the directions in the UPLOAD portion of the page). You can also select and create new categories from the Categories component on the right side of the page.
- To Write a Page, click on the sub navigation “Write Page” link.
Pages are very similar to posts, but will not be displayed with all of the other content posts that you make. Instead, these pages are standalone pages on your site. Once example could be an “About” page that explains what your site is in more detail. Once you create these pages, they will show up in the main navigation area of your site. Feel free to experiment, as you can always make these page inactive or delete them on the MANAGE tab of the main navigation.
IV. OTHER - ANALYTICS
Setting up Web Analytics for your site
Technically, your site is ready to go right now. However, we all love to know how much traffic we get at our site, so let’s set up a quick and easy web analytics package. I recommend using a (FREE!) Google Analytics account. You can sign up and set this up at: https://www.google.com/analytics/home. Once you are done signing up and adding your website, you will be presented with a personalized tracking script:
<script src=”http://www.google-analytics.com/urchin.js” type=”text/javascript”></script>
<script type=”text/javascript”>
_uacct = “UA-123456789-0″;
urchinTracker();
</script>
In order to make the tracking work, we now return to theme editor and make another simple change so this file is included on every page of our new blog.
-
Click on the PRESENTATION link on the main navigation, followed by “Theme Editor.”
- Select the Footer file from the right and copy/paste the Google Analytics block right before the