This guide was originally published in March 2012. Since then, hundreds of students (and even non-students!) have created their own personal websites using it. As it is one of the most-viewed articles on College Info Geek, I keep this guide very up-to-date.
What’s the #1 networking tool you can have in your arsenal as a student? I’ll tell you this right now: it isn’t your resume.
Resumes are boring. Career experts tell you to make your resume a one-page, size 11 Time New Roman document printed with black ink with no pictures. Seriously? How are you supposed to represent – and differentiate - yourself with that?
Plus, your resume becomes static and outdated the moment you hand it to someone. You can’t update resumes you’ve already given out – you have to make new copies.
That’s why you need a personal website.
A website is the complete opposite of a resume. Everything bad about resumes can be fixed simply by having a website. I’d go as far as to say that not having a website is like shooting yourself in the foot – it’s that useful.
4 Reasons Why You Need to Build Yourself a Website
1) A website isn’t static; it’s dynamic. It’s ever-changing. The moment you accomplish something, you can add it to your website. You don’t need to print new copies of it and send it out to your contacts over and over; you just update it. People can continually come back and see what you’re up to.
2) Having a website makes you more findable. If all you have is a resume, you have to go out and hand it to people to get your name out. If someone wanted to look you up on the internet and you didn’t have a website, all they might get is a Facebook or Twitter profile.
However, if you have a website, you can be found by a much wider audience and control what it is they see first. This is key for establishing your personal brand and for highlighting your accomplishments.
I’ve been offered jobs, met clients for my web design work, and gotten interviews simply because I have a website. If I didn’t take the time to create one, I’m confident that I wouldn’t have been found.
Make sure you can be found!
3) Not many people have one. Succeeding today requires that you make yourself stand out, and having a website can help you do that. It shows that you’ve taken the time to learn how to do something fairly technical, and it shows that you have some skills other people don’t have.
4) You gain some new skills that can be very useful in the future. Learning how to build a website involves a number of different skills, especially if you get into customizing and optimizing things. Even if you’re not looking for a job in a tech field, having these skills can give you a leg up.
Say you’re applying for a job in advertising. If you can tell the interviewer that you’re not only a great marketer, but that you also have knowledge of the web, you become a much more attractive candidate.
I sure hope so, because this guide is going to teach you exactly how to build that awesome website! I spent over 15 hours writing this guide (as well as taking screenshots and editing them) with the intent of making it the ultimate resource for getting yourself online. When you’re done, you’ll have established a great online presence. This is what mine looks like:
Here’s another great example – this is my girlfriend’s personal site, which she uses to showcase her graphic design work:
I’ve worked hard to make this guide as comprehensive, yet accessible as possible. It’s a bit of a long read, but that’s because it takes you from literally nothing to having a finished website.
In this tutorial, you’ll learn how to:
- Get a domain name and web hosting for your site
- Easily install WordPress and get all of your content up on the web with no coding knowledge needed
- Make your site look good with a kick-ass theme
- Optimize your site’s speed, security and more with plugins and widgets
- Find resources that can teach you how to take your site even further if you want
What you need to know beforehand:
- How to use the internet
- How to follow directions
What you don’t need to know/have beforehand:
- Photoshop, Dreamweaver, or any other program – these can be very useful for customizing things later down the road, but to get up and running all you’ll need is a web browser.
Seriously, building a website isn’t hard and you don’t need to know any code. Knowing code can be useful for tweaking and customizing things later, but you can get the basics down without knowing so much as a lick of HTML!
Estimated time to complete this tutorial: 1-2 hours (you’ll spend the most time on non-techy stuff like writing your content)
Alright, enough with the preliminary stuff. Let’s get started!
Note #1: If you get stuck at any point in this tutorial and need help, I’d be more than happy to assist you. You can get in touch with me on Twitter or via email. I’m serious – please ask me questions if you get stuck. I’d hate to see anyone go through a bunch of work and not end up with a great-looking site.
Note #2: I recommend some specific products and services in this tutorial. Be aware that these aren’t your only choice; they’re simply what I use personally and recommend.
Full Disclaimer: If you choose to use the domain and hosting option I recommend in this tutorial and click my links to get to it, I’ll earn a commission (though there is no extra cost to you – it will actually be cheaper since I’m able to offer a coupon code). I want to be very clear that there are definitely other good choices for your domain and hosting out there. This is simply the one I’ve been using since the beginning, and I’m very satisfied. If you do choose to use my link, thank you!
Step 1: Get a Domain and Hosting
The first step to building your personal site is to choose how you’re going to have it hosted. There are a number of ways to put up a website. For instance, you could just create a free blog at Weebly or WordPress.com, or even Tumblr.
However, I believe it’s a lot more impressive to have a self-hosted site with an actual domain name (not a subdomain). This will look a lot more legitimate and will show that you’ve taken the time to learn how to actually build a website, which can differentiate you from the crowd.
I’m not the only one who thinks so. One of my favorite entrepreneurs, Srinivas Rao, gave this tip for aspiring bloggers:
if you want to be taken seriously, then make sure you have a self hosted wordpress blog.#blogchat
— Srinivas Rao (@skooloflife) March 19, 2012
So while it’s up to you in the end, I would recommend self-hosting your site. Still, having a free site on WordPress.com or another place if you’re on a tight budget is much better than not having a site at all!
Now, before we get into all the nitty gritty step-by-step stuff, there’s one thing I want you to think about first: your domain name. And the first rule of choosing a domain name is…
Don’t Register SailorMoonFreak94435.biz, Dummy.
I can’t stress this enough: you need a good domain name. (side note: I thought real hard about registering that domain as a joke, but eventually decided against it) Follow these criteria for the best results!
- If it’s at all possible, make your domain name your first name + your last name.com. That’s seriously the best option for memorability and SEO (aka how high you show up in Google).
- Your name will probably be taken, though. I certainly couldn’t get thomasfrank.com, so I had to go with thomasjfrank.com instead. If your name is taken, you can throw in a middle initial or maybe even your full middle name if it doesn’t make the domain too long.
- You can also use a clever play on your name if none of the above works. I’d be totally cool if my Twitter name was my domain name – tomfrankly.com would be pretty memorable! In fact, that domain will direct you to my personal site as well.
- Don’t use numbers in your domain name, and only use dashes if you absolutely have to.
- If a .com domain isn’t available (this is the most preferred extension), then .net, .org or .me are fine substitutes. A .us is alright, but I would stay away from things like .info and .biz.
- Above all, make sure your domain’s spelling is very easy to get correct for someone just sounding it out. This way, you’ll be able to mention your domain easily in casual conversation, and the person you’re talking to will be able to find it without worrying about the spelling. This tip really applies to everything – for instance, it’s a lot easier to tell people my Twitter handle, @TomFrankly, than it is to tell them the username I used to use for everything in middle school, electrick_eye. The goal is to make it easy for people to find you.
So once you’ve thought of a good domain name, let’s kick off this whole website-building process by getting your domain and hosting.
Time to Get a Domain and Web Hosting.
It used to be that you had to buy your domain name separately from your web hosting. Now, however, you can get them from the same place, right at the same time. Buying them separately is still an option, but it’s so much easier to get them together (the convenience costs about $3 extra).
I’m going to use the combined method in this tutorial to keep things simple; however, you can always email me if you want help setting them up separately (or for anything else).
Note to your wallet: this is the only part of the process that will cost you any money. Hosting isn’t free. However, it doesn’t have to be that costly, either – and I believe the small cost is worth the boost having a website gives to your personal brand and credibility.
There are literally a zillion options for web hosting out there. You can go with a shared account, a VPS, or go crazy and pay for your own dedicated server.
You could even get geeky and host your site from your own computer – though I don’t recommend this as you probably don’t want to deal with the security risks of running a web server, and any time your computer gets turned off (e.g. during power failures and when you have to move out of your dorm), your site will go down. Still, it’s an option.
Since you’re probably a college student and, like me, not swimming in a vault full of money, I’m going to assume you just want something cheap that works.
With that in mind, I recommend just getting the basic shared hosting plan from HostGator. There are plenty of good hosts out there, so HostGator certainly isn’t the only one you can use; however, I’ve been hosting all my sites through them for over three years and I’ve always been more than satisfied.
Their plans are pretty cheap, there’s hardly ever any downtime, and I love the quick-install options I get for installing things like WordPress. Also, their customer support is just plain badass.
One time, I needed an obscure PHP server setting changed for a project, and it was something their level-1 techs couldn’t do for me. So within 20 minutes of me asking, one of their higher-up system admins not only changed the setting, but also sent me a screenshot of the directories and commands he used to do it just in case I needed to do it on another server in the future.
You can also get a pretty good discount.
Use the coupon code collegeinfogeek to get 35% off of your initial hosting purchase – whether it’s for 1 month, 12 months, or 3 years – the time doesn’t matter. This is actually 15% more savings than you’d get with the default coupon code they give you, so definitely make use of it if you choose to use HostGator.
So yeah. This tutorial assumes you are using HostGator; however, if you choose another host, these instructions should be pretty similar to what you need to do.
Head to HostGator and click the big button that says “View Web Hosting Plans”. On the next page, you’ll see several choices. Choose the Hatchling Plan, ‘cuz it’s cheap and you seriously don’t need anything fancier.
Start your journey through the order wizard by picking out a domain name. Choose to Register a new domain, and type the one you’d like to see if it’s available. If it is, you’ll see a screen like the one below! If not, tweak it a bit until you find one that hasn’t been taken.
Scroll down and complete the next few sections:
- Confirm that the Hatchling package is selected, and choose how many months of hosting you’d like to get up front. I recommend at least one year.
- Choose a username and security pin.
- Enter your personal and billing junk.
Next, you’ll see a section for Hosting Add-ons. Honestly, I don’t think you need any of these, and I don’t use any myself. The possible exception is Domain Privacy Protection, which protects your name, address, and phone number from being seen in WHOIS searches. I don’t use it, but you can if you’d like.
In the section on Plugins, I’ll show you some ways you can keep your site secure, backed up regularly, and optimized for SEO – all for free.
Next you’ll be asked if you have a coupon code. Enter the code COLLEGEINFOGEEK to get 35% percent off – 15% more than the default code gives you
Finally, review your order to make sure everything’s copacetic, and then hit the big yellow button to create your account.
Once you’ve paid, you’ll receive an email with all the information you’ll need to continue.
Step 2: Install WordPress and Set Up Your Site
Time to start actually building your site.
As I mentioned in the beginning, you’ll be using WordPress (self-hosted, not WordPress.com) to set up your site. You may have heard that WordPress is mainly a blogging platform, which is completely true. However, in recent years WordPress has become so popular and well-supported that it makes a perfect platform for building non-blog sites as well.
WordPress is famous for only taking 5 minutes to install; I say that’s way too long. Let’s do it in 2, shall we?
One of the best things about HostGator is their quick-install options for almost every popular CMS (Content Management System). Of course, they have one for WordPress. Let’s get it set up.
Type this URL into your browser: yourdomain.com/cpanel - replace yourdomain with your domain name. If for some reason you can’t yet reach your domain yet (sometimes it can take a little while to set up), use the link you were given in your HostGator email listed Your Control Panel.
Log in with the username and password you were given in the email.
You’ll now be looking at your cPanel. To install WordPress, scroll down near the bottom of the page and find the link for QuickInstall.
On the QuickInstall page, look in the sidebar and find WordPress under the Blog Software section. Follow these steps to install WordPress in less than 2 minutes:
- Click Continue.
- In the content that pops up, the first thing you’ll see is “http://”, followed by a drop-down menu with your domain, followed by a blank box. Leave that right box blank so your installation isn’t put into a subdirectory.
- Uncheck Enable Auto-Upgrades. You should always keep your WordPress installation up-to-date, but it’s better to do it manually so you can make sure your theme and plugins are working right after you update.
- Fill in the fields shown. Do not use “admin” as your Admin username. Using something unique will be more secure.
- Click Install Now! Once the installation finishes, you’ll see a confirmation with your login URL, the username you chose, and an assigned password.
You should now have a fully functioning WordPress installation! If you visit your site right now, you’ll see the title with the default WordPress theme.
Note: It can sometimes take an hour or two for the web host to set up your account. While you’ll be able to access your cPanel right away, your domain might not be accessible for 1-2 hours. You can read more about this here.
Before we get to creating pages and all that, let’s take a few minutes to get a feel for the WordPress Dashboard.
Getting to Know WordPress
WordPress is a system that’s pretty easy to use and navigate – especially since the creators implemented tutorial features in version 3.3. However, I’d still like to give you a quick overview of what’s available to you. Here’s a shot of what you should see when you log in:
The big welcome message in the middle is there to help you while you’re first getting started, so it’s good to check it out. Beneath this message are a bunch of widgets, but you won’t need to do much with them right now.
What I’d like to go over are the links in the sidebar – these are all the core functions of WordPress. Note that hovering over each of these links will cause additional options to show up. Also, the one that’s active will show its additional options by default right underneath it.
- Dashboard - the “home base” of WordPress. This is what you seen when you log in, and it contains whatever widgets you’ve chosen to show on it.
- Posts – the heart and soul of WordPress. This is where you’ll go when you want to write a blog post or edit an existing one.
- Media – a central repository for any pictures, sound files, video, and other pieces of media that you upload to your site. Here you can browse through and edit media you’ve uploaded to your posts and upload even more.
- Pages – here you can create Pages, which is what you’ll be using for the main content on your site. Pages are different from Posts because they will show up in your site’s main navigation instead of going on your list of blog posts. This makes Pages good for “timeless” content like your biography, work history, and contact info.
- Comments – here you can see the comments on your blog (if you decide to have one).
- Appearance – this is where you’ll customize the look and feel of your site. There are options for your site’s theme, menus, and the widgets you want to display. There’s also a rudimentary code editor, but it’s not very good. If you’re getting to the point where you want to manually edit your site’s theme, I recommend ShiftEdit.
- Plugins – this is where you can add and manage your plugins, which are like small apps that can give your site new functionality. There are a number of great plugins you should be using, but we’ll get to those a little later.
- Users - here you can manage the user profiles on your site. Since this is a personal site, the only one that should be here is your own.
- Tools - by default, the only things here are the Import/Export options, the Press This bookmarklet, and a Categories/Tags converter. Right now, you won’t need any of these.
- Settings – this section houses all the general settings for your site. There’s a lot of stuff here.
Now that you know what does what, you should have an easier time navigating WordPress and creating your site.
Before you start making your pages, however, let’s take care of a couple important things!
Change Your Permalink Structure
When you create a page, WordPress makes the URL reflect the page title. For example, a page titled “Contact” would get a URL like yourdomain.com/contact. This is what you want.
However, by default WordPress doesn’t do this for blog posts. Instead, it creates these ugly numeric URLs like yourdomain.com/?p=123. These URLs don’t mean anything – it’s much better to make your blog post title be the URL.
To do this, you need to change your permalink structure. This is pretty straightforward:
- Hover over Settings and click Permalinks.
- Choose the option for Post Name. (This may be the default setting with QuickInstall installations, but it’s good to check.)
- Save your changes.
Now your blog post URLs will be much more memorable.
Set Your Timezone
This isn’t a ridiculously crucial thing to do, but I think it’s good to have your publishing time be accurate.
- Go to Settings -> General.
- In the Timezone field, choose your timezone. Don’t know it? Here’s a handy map.
- While you’re here, you can also go to the bottom and change week’s starting day if you want.
- Save your changes.
Now that you’re done taking care of those little details, it’s time to create your pages and get your content up on the web!
Setting Up the Page Structure
If you recall from the section detailing each part of WordPress, Pages are used for timeless content such as your biography and contact information. These pages will appear in your site’s top-level navigation, or 2nd-level navigation if you decide to create child pages.
Take a look at my site’s navigation once more to get a feel for what you’re going for here:
Don’t worry if you don’t feel like you have content for every one of these pages; you’ll just be creating the pages that you need. For instance, I don’t expect that many of you will have a Foursquare pin map that you can embed to make a “Where I’ve Been” page (though if you do, that’s awesome).
However, there are a few pages you should create no matter who you are. These include:
- A brief About Me page, which you’ll set as your home page
- A more detailed Biography page
- A Resume page where you can list your education, work, etc (remember how I said I hate resumes? Having your resume on your website fixes all those things I hate)
- A Contact page that tells people how they can get in touch with you. It might have a contact form as well.
Other pages you might think about adding, if they’re applicable to your life:
- A Portfolio to show off any kind of work you’ve done – graphic design, programming projects, writing – whatever. On my site, I’ve created a portfolio of my web work using a normal page template. You can make yours this way, or you can get a theme with a specific portfolio template.
- A Hire Me page. I strongly suggest you make this page, even if you aren’t currently looking for full-time work or freelance gigs. This page tells people what you’re looking to do, and can help them picture where you’d fit better.
- A Blog. WordPress is set up for blogging by default, but you’re going to set your homepage as a static About Me page. Therefore, you’ll need to set up your blog manually, which is still really easy. You can also choose to leave the blog out if you want, but I think having one is a great way to show off your knowledge and thoughts.
- A Press page, where you can list any interviews or mentions you’ve gotten in the media.
- An Impossible List. I think creating a page like this is really fun, and can help you solidify your life goals.
If you’d like a more detailed explanation of the pages you should include, check out my post on essential personal website components – which also includes some great examples of other personal websites.
It’s really up to you to decide what pages you want to have on your site. I’m going to show you how to create your About Me page, and you can use the same steps to create the rest.
Before you do that, though, you should delete the sample page and post that WordPress automatically puts up on your site.
First, get rid of the sample post by going to Posts on the WordPress Dashboard. Find the post titled “Hello World!” and click Trash.
Then go to Pages and do the same thing for the page titled Sample Page.
Creating the “About Me” Page
Your About Me page will be the landing page of your site – the place visitors will see first. Here you’ll want to have a short summary of who you are, what you’re studying, and the what work you do. It’s also good to have a picture of yourself, and maybe even some quotes about your work from other people.
Let’s create it!
You should already be at the Pages section of the WordPress Dashboard. Find the button near the top that says Add New. You’ll see this screen when you do:
As you can see, creating pages in WordPress is pretty easy. To get your About Me page started, first enter a title in the Title Bar. It would probably make sense to title this page “About Me” or “About <your name>”.
Next, you’ll use the body area to enter all your content. Take a look at the different tools available for formatting the content; as you’ll find out, using WordPress isn’t all that different from using Microsoft Word.
So once you’ve familiarized yourself with the tools, you can start typing your content. You can also use the Add Media button to upload a photo and add it into your post.
To do this, place your cursor at the point in your content where you want the photo to appear. Click the Add Media button upload a photo. Once it uploads, you’ll see this:
Bam boom zippity bop – you’ve got a photo on your page.
So once you’ve got your photo and some text, go ahead and hit Publish. This will make your page go live.
Set Your “About Me” Page as Your Home Page
Since this is a personal site rather than a blog, you’ll want this page to be the first page visitors see when they get to your site. Let’s set it as the home page:
- In the sidebar, hover over Settings and click Reading.
- In the Front Page Displays section, click the radio button that says A Static Page
- Choose your About Me page to be the home page.
- If you want to have a blog, create and publish a blank page called Blog and set it as the Posts Page.
- Save your changes.
Now, go back the the Pages section of WordPress and create the rest of your pages. This process should be relatively straightforward; the only one that may be more complicated is your Contact page.
This page can be really easy to create if all you want to do is link to your social media profiles. However, you may also want to link your email address or add in a contact form.
Making your email address clickable is really easy – it just requires a tiny snippet of code. In the WordPress content editor, look up near the top-right and change the tab from Visual to HTML. Then find the section where you want to list your email and paste in this code:
Make sure to replace both of the “youremailhere” blocks in that snippet with your own email.
If you want to add in a contact form, you have two options. You can either find a theme that has a built-in contact page template, or you can use whatever theme you want and add a contact form using a plugin. Either way, it’s really easy. I’ll cover the first option in Step 3 and the second in Step 4.
[Optional] Adding a Blog Page
If you’d like to add a blog page to your site, it’s ridiculously easy.
Simply make another new page on site called “Blog” (or whatever you want, it doesn’t matter). Then on your Dashboard go back to Settings -> Reading and set your Posts page as that page you just created.
From there, all you have to do is go to Posts and start writing. All your published blog posts should show up on that Blog page.
If you’d like to learn more about creating a successful blog, then be sure to check out my comprehensive blog-building guide.
It’s All Coming Together Now.
At this point, you should have all your pages up and all your content put in each of them. Right now, someone could come to your site and learn all about you.
Now it’s time to make sure visitors are impressed when they hit your site. Let’s look as customizing your site’s look and feel.
Step 3: Customize the Look with a Theme
One of the best things about WordPress is the stupidly large amount of themes available for your to use. Using a theme, you can change the look of your site without needing to know any CSS or have any graphic design skills.
A theme is basically a skin for your site. It changes the look while retaining all the content you created.
The first step in customizing your site’s look is to simply find a theme you like. This can be easier said than done, due to the huge amount of themes out there. I’m going to try and help you pick one out.
Note that not all themes are created equal. Some themes are simple, offering just the basics, while others are monstrous creations with dozens of post types, animations, and extra bells and whistles. Some themes are made for specific types of sites, like magazines or restaurants.
Likewise, some themes are free and some are not – AKA “premium“.
On both my personal site and here on College Info Geek, I’m using premium themes that I got for about $35 each. However, there are plenty of great free themes out there you can use, so don’t think you absolutely need a premium theme.
I’ve gone out and found three themes that I think work well for personal sites. Keep in mind that there are literally thousands of themes out there, so this is just a starting point.
Want more? Here are some great places to get themes:
- Official WordPress theme repository
- ThemeForest – which has a ton of themes, so check out this search for some good ones for personal websites
Like I said, the theme options you have are literally endless. Explore and find something you like! Also, see if the theme you’ve chosen has a template for a contact page. If it does, you’ll be able to put up a contact form without using a plugin.
Once you’ve found something that you like well enough, let’s get it installed.
Install Your Theme
Wherever you found your theme, download it to your computer. The theme will probably come in a .zip file. Look inside this zip file.
If you see files like index.php, header.php, and footer.php in that very first folder, you’re good. If you find that those files are buried in sub folders, you’ll need extract everything and create a zip folder of whatever folder contains those files.
Most themes will come with documentation that tells you how or even if you need to do this, so consult that for help if you need it.
Once you have the final .zip file, it’s time to install it.
- On the WordPress Dashboard, hover over Appearance and click Themes.
- Click the tab at the top that says Install Themes.
- Find and click the link that says Upload.
- Choose your .zip file and and click Install Now.
- Make sure the theme was installed successfully, and click Activate.
From this point forward, I can’t really cover theme setup in this tutorial. Themes are so diverse that it’d just be impossible for me to cover everything. Luckily, most good themes come with documentation that will walk you through setting them up.
Set Up Your Menu
One thing I’ll go over before we head into the next section: WordPress’ Custom Menu functionality.
Since I published this tutorial, a lot of people have asked me how to create custom menus on their sites. Specifically, they wanted to do things like:
- Change the order of the pages in their menu
- Create menu items that would drop down to display more pages related to a main page
Ask, and ye shall receive. I’ve created a short video that will guide you through the whole process of creating a custom menu for your site.
Oh, and one more thing before we move on…
I bet you’re wondering how to get a cool logo for your personal website like I have on mine. Well, you could design yourself on using Photoshop or another program if you have the graphic design chops.
I certainly didn’t have those chops, though. I actually used a service called Fiverr to have mine done. Fiverr is a website that lets people pay $5 to other people in exchange for… well, almost anything. I just went there, searched for “logo”, and picked the option with the most gigs and highest satisfaction rate. $5 for a logo ain’t bad!
Now that you’ve got your theme, it’s time to tweak things a little bit further by adding plugins and widgets.
Step 4: Optimize with Plugins and Widgets
Alone, WordPress is a great system with a lot of functionality. However, the true beauty of WordPress lies in its ability to work with plugins – small (or large) pieces of packaged code that add functionality to your site.
There are several plugins that I believe are absolutely essential to any WordPress site, and more still that you may want to install as well.
Installing plugins is pretty straightforward. Unlike themes, almost every plugin you’ll ever need is kept in the official WordPress plugin repository. Therefore, you don’t need to upload .zip files – you can actually just search for plugins right from your Dashboard and install them! To do this:
- On the WordPress Dashboard, hover over Plugins and click Add New.
- Search for the plugin you want. The search function isn’t amazing, so you’ll usually get the best results by typing in the exact name of the plugin you’re searching for.
- Click Details to read about the plugin or Install Now to install it.
- After you install, click Activate.
- If there’s any setup required for the plugin, take care of it.
Important Note: Plugins work directly with the guts of your WordPress installation. It’s important that you be discerning on what plugins you choose to install on your blog; make sure you trust what you’re installing.
I recommend looking up plugins at the WordPress Plugin Directory before installing them. If a plugin has a low star rating, it might be broken – or even worse, it could have security vulnerabilities that can open up your blog to attacks. Be careful out there, trooper.
There are several plugins that I wouldn’t be caught dead without on these high seas of the Internet. I recommend you use them as well. I’ll link to each one’s repository page, but remember that you can install them directly from your Dashboard.
- Limit Login Attempts - quite possibly the most important plugin your could ever install. It limits the amount of time an IP address can try to log in. This is really important, because every day more and more malicious scripts are trying to hack WordPress blogs buy guessing the password over and over. With this plugin, you can stop them in their tracks.
- Disqus – a great commenting plugin that replaces the default WordPress comments system. I highly recommend using this if you’re going to allow comments on your site, as it’ll prevent spam much better than other solutions. The only reason I don’t use it is because I have thousands of old comments that won’t import well.
- WordPress SEO by Yoast – a great plugin that optimized your site’s SEO (search engine optimization) potential. This makes you more findable by search engines. It’s also pretty complex, so follow this tutorial to set it up.
- UpdraftPlus – probably the best free site backup plugin I’ve seen. Lets you manually back up your database or your entire site. You can also set regular, scheduled backups, and send them off to remote destinations like Dropbox, Amazon S3, email, etc. Replaces WP-DBManager, which I used to use.
- Social Media Widget – lets you add a widget to your sidebar with icons that link to your social media profile. You’ll need this plugin if you want to add these icons to your site in the next part.
- Contact Form 7 - the best and easiest-to-use contact form plugin there is. Just use the plugin’s setting to create the fields you want (the default is probably sufficient), and then input the supplied code it gives you into your Contact page.
- Google Authenticator – another essential security plugin. It adds another form to your login page that requires you to use the Google Authenticator app to log in. This increases your blog’s security by a large margin. Make sure you have this set up correctly before logging out of your blog!
These plugins are just the tip of the iceberg. If there’s something you want to do with your site, there’s probably a plugin that can help you do it.
Alright, now that you’ve got your plugins installed, let’s move on to the final bit – widgets.
Widgets are elements that you can place on any part of your theme that has been “widgetized” – that is, set up for widgets to display. There are already a few widgets displaying on your site by default, like Category, Recent Posts, and Meta.
To edit the widgets that are displayed on your site, follow these steps:
- On the WordPress Dashboard, hover over Appearance and click on Widgets.
- On the right side of the screen, you’ll see all of the widget areas that have been created for your theme.
- Drag the widgets you want from the middle area into the correct boxes.
- Change any specific widget settings you need to change.
Widgets are automatically saved when you drag them in or out of a box. By the way, you can use the Widget Context plugin if you want to specify certain pages that a widget will or won’t be displayed on. This keeps things from getting redundant.
Since this is a personal site, there are some specific widgets you might want to show:
- Social Media Widget - this widget becomes available when you install the plugin for it that I listed in the last step. It’s hands down the easiest way to put icons in your side bar that link to your social media profiles, so definitely make use of it.
- Links - if you have friends who also have personal sites, it can be cool to link to them. I do this on my personal site’s sidebar; it’s a cool way to build a visual network of student entrepreneurs.
- Text - as it says, this is a widget for “arbitrary text or HTML”. You can put anything in this list, granted that you know a smidgen of code. For instance, you could add a picture of yourself and a super-short bio like I’ve done on this site. Or you can embed your tweets using Twitter’s Profile Widget. There are a lot of possibilities here.
You should now have a fully functional website! You’ve got all your pages created, your menus set, a kick-ass theme, some great plugins, and a few widgets in your sidebar.
Congratulations! You’ve just upped your internet cred +1000 and simultaneously made yourself a much more attractive candidate for any job you might want to go for.
Here’s a quick to-do list to make sure you get the most out of your site:
- Make yourself some kick-ass business cards and be sure to include your URL on them
- Put your URL in your Twitter bio
- Add your URL to your other social networks – Facebook, Pinterest, LinkedIn, Google+, etc.
- Add your URL to the top of your resume
- Start thinking of your site as your online “base of operations”
At this point, you can consider your site “done”. In the next step, I’ll outline some ways you can take your site to the next level. Whether you decide to do that or not, I’d like to ask you to do one thing…
Leave a comment with your new site’s URL! I’d love to check it out and see what you were able to come up with.
If you decided to skim through this tutorial first and still aren’t sure if you’re up for this process, here’s one last thing that will show you how easy it is. In this video, I go through the entire process of building a site in less than 10 minutes (plus a couple minutes explaining things).
Alright, so for those of you who want to go above and beyond, let’s take the final step.
Step 5 (Optional): Make Your Site Even Better
The purpose of this tutorial was to get you from zero to working website as easily as possible. However, you can do so much more to optimize your site’s design, speed, SEO, security, navigation, typography… your options are endless.
That’s why I want to show you some of the things you can do to take your site to the next level. I’ll also point you to some resources you can use to get started!
Upgrading Your Brain
I started building websites when I was 12. At first, I was just using the super-old school Geocities site building tool to drag and drop elements. It was fun, but it wasn’t enough. Eventually I found that I needed to learn some code, and I began teaching myself HTML.
Luckily, the web has come really far in recent years. With content management systems like WordPress, anyone can make a beautiful website (as you just did) without knowing any code whatsoever.
Still, clicking around WordPress can only get you so far. There comes a point where you want to take your site to the next level, and you’ll need some web development knowledge to do it. With that in mind, here are some resources you can use to kickstart your web development education.
To keep things free, stick with these online resources:
- Web Platform Docs – an amazing wiki chock-full of tutorials and references. If you’re a a reading-based learner, this is a great place to start.
- Mozilla Doc Center – another awesome place to learn the basics. I prefer the WPD wiki, but this is a great alternative.
- Codecademy – a site that offers interactive courses on HTML, CSS, programming, and more. Definitely a good choice for those who learn by doing.
- Design Tuts – the place to go if you’re looking to brush up your graphic design skills. They’ve got lots and lots of great tutorials.
- PHPAcademy – an amazing channel to watch free video tutorials on PHP, the language the drives WordPress.
- Web Design Tuts – part of the very large Tuts+ network ran by Envato. I’ve linked to one of their great beginners’ series.
- WordPress Codex – the official documentation of WordPress. There are a lot of great tutorials here, as well as a complete function reference for when you start getting really geeky.
- Smashing Magazine – an amazing online magazine with articles about every aspect of web development.
One additional resource I recommend, but that isn’t free, is Lynda.com. This is an amazing site to hit up if you’re looking for video courses on literally any web development topic. In fact, many universities offer their students free subscriptions to this site. Ask your school’s IT department to find out if yours is one of them.
Another great video-based learning library is Treehouse. Their library isn’t as extensive as Lynda’s, but they still have a lot to offer – especially in the area of web development. I actually prefer Treehouse over Lynda, as they include code challenges and quizzes with their video-based projects. In fact, I learned to build an iPhone app in just two days by using Treehouse. Unfortunately, I have yet to see any schools offering free subscriptions to their students – but that doesn’t stop your from asking!
If you’re a book learner, I have a few recommendations for your library:
- HTML and CSS: Design and Build Websites by Jon Duckett – a beautiful book that provides a great introduction to the basics of web development. This is a great starting point to any web development education.
- WordPress 24-Hour Trainer by George Plumley – if you’re looking for a book for beginning WordPress. Honestly, I think you can learn well enough by using the Codex and just playing with things. If you really want a book, though, this is it.
- Professional WordPress by Hal Stern – for the serious geek only. This book digs deep into WordPress. Only buy this if you’re interested in learning how the Core and Loop work or how to start building themes and plugins.
- Don’t Make Me Think by Steve Krug – the kickstart guide to web usability. A great way to learn how to make websites usable and accessible.
Web development education is a huge field, and I’m not going to pretend I can cover it all in one post. These resources will get you started, but know that there are lots of other great ones out there. One of the best ways to learn is simply talking to other developers!
Upgrade Your Site
Now that I’ve gone through ways you can learn web development, I’ll round out this post with some links that will teach you specific things you can do to make your site even better.
First, a few posts written by none other than yours truly:
- How to Beef Up Your WordPress Security – the plugins you installed in Step 4 go a long way to protect your site, but there are other things you can do to batten down the hatches as well.
- The Ultimate Guide to Implementing Facebook Comments on Your Blog – if you’re planning on really building out the blog portion of your site, you may want to add in Facebook Comments. In this tutorial, I show you how to add them in alongside the default WordPress comment system.
- Activating Ludicrous Speed: Combine CloudFlare with a CDN on Your Blog – this tutorial goes through the process of combining CloudFlare with MaxCDN to optimize your blog’s speed. Since you’re just starting out, I’d recommend just using the first half to get CloudFlare (free) up and running, and leave the CDN (not free) for later.
Enough with my own work. Here are some of my favorite WordPress-related blogs, which I read regularly to learn how to make my sites awesome:
And to get you started, here’s a short list of specific things you can do to make your site better. I’ll update this section with new items from time to time.
- Enable Google Analytics to track visitor statistics (thanks to Shep McAllister for reminding me to add this)
- Use FeedBurner for your RSS feed
You might not feel the weight of that word, especially if you just browsed through this article first before getting started. For me, though, it’s amazing to look at after spending over 15 hours writing this tutorial.
Hopefully, you now have a completely functional website and a budding knowledge and interest in web development. If you’ve gained either of those things, I’ve done my job!
Remember, if you need any help, you can contact me. I’ll either help you directly or point you to people or resources that can be of assistance. You can also just connect with me without a need for help – I’d love to meet you! Follow me on Twitter:
Did you find this tutorial useful? Want to give back a little? I’d love it if you used one of the buttons in the sidebar to share this post! It only takes a couple seconds (heck, the Facebook button probably takes less than one second), and it helps other students find College Info Geek. Thanks!!!
If you want to get updates when I release more great content like this in the future, be sure to sign up for my email newsletter below!