How Start Viral Blog in 2018
You’ve now decided what kind of blog you’ll create. You’ve identified your topic and your niche, and you’ve done a sanity check on these decisions in terms of markets, trends, and competition.
You’ve also set some reasonable goals and expectations for your blogging. In this post, we will explain all the latest trends that describe how to create and viral a blog in a better manner in 2019.
Choose Your Blogging Software and Hosting
One positive effect of the popularity of blogging is the wealth of blogging solutions you can choose from. There are so many options available these days that it can be overwhelming for newcomers when they first venture out into the blogging arena.
Unsurprisingly, according to the Google Keyword Tool, there are hundreds of thousands of searches each month regarding blogging software. Let’s shed a beam of light on this subject by shortlisting some of the most sensible options.
Your Three Main Options
As a technical blogger, consider the following three options:
• WordPress(.org): The absolute leader in blogging software. This open source application currently powers an impressive 14.7 percent of the top million sites (not just blogs) on the Web.
Static site generators: Increasingly popular among developers, site generators such as Jekyll or the more user-friendly Octopress framework (which is built on top of Jekyll), typically generate your blog from template text files that you can edit in a markup language like Markdown or Textile without the need for a database or a complex server setup.
The compiled output will be a static site with HTML and CSS files that you can upload to any web server (even Amazon S3 and GitHub Pages3).
Blogging services: A variety of providers offer the ability to host a blog using their web platform without having you install anything. Common services of this nature include WordPress.com, TypePad, Blogger etc.
Let’s quickly review the pros and cons of each of these solutions.
WordPress- the Smart Choice
As the most popular blogging software, self-hosted WordPress is able to boast thousands of plugins and themes that let you customize your blog however you like. It has one of the richest online ecosystems, even when compared to other software outside the blogging world.
Should you ever need help with WordPress or wish to have custom features created, there are plenty of developers who are familiar with the system and ready to help for a fee. Likewise, countless designers have worked with WordPress themes before, so finding a good one should be fairly easy.
As a self-hosted solution, WordPress has the disadvantage of requiring a server to host it on (unless you opt for the commercial hosted solution provided by WordPress.com).
Your server will need a web server such as Apache or Nginx and MySQL for storing and retrieving data, plus support for a recent version of PHP. You’ll also need to update WordPress itself pretty frequently so as to avoid security vulnerabilities that crop up from time to time.
According to some critics, WordPress is also bloated and slow (particularly when filled with numerous plugins of varying quality). Thankfully, there are excellent caching plugins that make WordPress very fast. We’ll cover these plugins in the next blog, which is dedicated to fine-tuning your blog.
Static Site Generators
Static site generators are still very much a niche, but their increasing popularity with (the good kind of) hackers may be justified. Such generators offer you the ability to directly edit your posts, blog structure, and design by using a text editor such as Emacs, Vim, or TextMate.
Many of these generators are simple, small, and written in scripting languages such as Python, Perl, and Ruby; so if you are familiar with these languages, you’ll be able to easily extend them to customize their behavior. This process is arguably much simpler than learning how to customize a large system such as WordPress.
Other points in favor of Jekyll and similar static generators are the ability to store your blog under revision control through tools like Git or Subversion and the simplicity of being able to deploy the output site pretty much anywhere, as well as its positive performance implications.
In fact, since your blog ends up being a static site, its performance should be very good—even on commodity hardware.
The major disadvantage is that you are on your own. There are very few premade add-ons that aid you in accomplishing even a small percentage of what you can do with software like WordPress. For example, if a new social network is announced, you can expect free widgets for it from some WordPress plugin developer in a matter of days.
Using a static generator, you’d most likely have to write the code yourself. Depending on the type of blog you envision and your coding abilities, this may or may not be a deal breaker for you.
Blogging Services: The Easy Way
Blogging services come with the major advantage that you don’t have to worry about servers and their configuration. The company behind the service is responsible for the blog software and server upkeep.
Even some large organizations use hosted services for their official blogs. For instance, Amazon uses TypePad for many of their blogs, while Netflix uses Blogger.
This choice allowed both companies to immediately inject themselves into an existing community of bloggers and commenters. In doing so they also guaranteed for themselves open communication with their customers should their main sites become unavailable.
Status updates become crucial to placate irate customers during outages. So if you’re blogging for a company, consider hosting your blog on a different hosting solution from the one you use for your company site.
The main problems with blogging services are a relative lack of flexibility and customization, the possibility of being kicked out at the discretion of the service owners, vendor lock-in, and other arbitrary restrictions imposed by the vendor.
For example, WordPress.com will not allow you to upload your own themes and plugins, and your choices are limited to what they provide.
While some blogging services are better than others, they all share certain kinds of restrictions when compared to a self-hosted solution. With some platforms, you’ll also have to pay a monthly or yearly fee. WordPress.com is free;
However, it does require that you pay for every little customization, including associating your own domain name to the blog. Should you decide to go this route, carefully evaluate features, customization options, policies, and export facilities before committing.
Which Blogging Platform Is Right for You
So which one should you go with? Opt for a self-hosted WordPress installation if you are the kind of person who doesn’t mind dealing with a remote Linux box. The chief reason for this is that you’ll be working with what is a de facto standard in blogging that offers you maximum flexibility and independence.
If you don’t have an IT background or would like to test the waters before committing to something that requires you to rent hosting, then, by all means, go for a hosted blogging solution. Doing so will be a much easier and friendlier choice that will get you up and blog in very little time.
In such a case, I recommend Blogger (from Google) due to their somewhat lax policies and because they allow you to associate your own domain name with your Blogger blog for free, as explained in Using Your Own Domain Name with Blogger, on the page. Plus, you’ll tap into the existing community around this well-established blogging platform.
Given the technical audience of this blog and my recommendation that most committed bloggers opt for a self-hosted WordPress platform, I will provide a lot of guidance for those who have chosen WordPress, both within this and the next blog.
If you went with an alternative solution like Blogger, however, do not skip these two WordPress-heavy blogs. You’ll find plenty of useful information about DNS, SEO considerations, sidebar configuration, subscribers, and much more that still fully applies to you!
I’ve provided hints for Blogger users throughout these two blogs, but it would have been impractical for me to provide detailed instructions for each major blogging platform that exists.
If you didn’t opt for WordPress (or Blogger), you may have to figure out on your own or look online how—and if—a given feature discussed is available to you. While references to WordPress (and Blogger) may still appear here and there throughout the blog, all other blogs will be blog-engine agnostic.
Select a Hosting Service
Unless you opt for a service like Blogger, you need a web hosting provider to run your blog. Hosting offerings exist for all budgets. Favor the bottom rung of the price range ladder while still aiming for quality providers. Spending as little as you can on hosting, in the beginning, is the key to keep your blogging expenses to a minimum before your blog has proven itself.
Various kinds of hybrid and complex hosting arrangements are available from hosting providers, but the spectrum can be roughly divided into the following four types of hosting plans.
Shared hosting: Up to hundreds of sites from many different customers are hosted on the same web server. The hosting provider takes care of managing and maintaining the server, while the customer tends to have limited access to system administration tools and little flexibility in terms of what can be installed on the machine.
Often running you only a few dollars a month, shared web hosting is the most inexpensive option.
VPS (virtual private server): The resources of a powerful server are divided between a handful of customers through virtualization software. Each customer gets their own virtual server running in a virtual machine that uses a proportional share of the physical resources that are available on the host machine.
This option is more expensive than shared hosting, but it also provides you with a much better and more predictable performance. It can be provided as an unmanaged service, in which the customer needs to take care of installing and maintaining the server’s software, or as a managed service, wherein the staff handles the system administration for you.
Dedicated servers: A server is entirely dedicated to you. Just like VPS hosting, dedicated servers come in managed and unmanaged forms, depending on the provider. Some people even go so far as to provide their own machines that are hosted in a local data center as part of a so-called colocation arrangement.
Cloud computing: Computing resources are provided and billed based on usage. You could rent three instances (think the equivalent resources of three dedicated servers) an hour and switch back to a single instance an hour later when the traffic spike is gone.
The value of cloud computing mainly resides in the ability to easily scale your computing needs without requiring a data center investment upfront. The cost scales accordingly with the resources you need.
Unless you already rent web servers and have experience working with them, start with shared hosting. Without a doubt, it’s both the most inexpensive and the easiest way to get started with self-hosted blogging.
Do your homework when it comes to these kinds of services, and be aware of the many fake reviews posted by some unscrupulous affiliate marketers who are after the hefty commissions hosting companies provide for referrals.
How about dedicated servers? You don’t really need to look at these options quite yet;
Finally, the king of cloud computing is Amazon AWS, with other providers such as Rackspace and SoftLayer also offering popular cloud-based solutions.
Configure Your Domain Name
Regardless of your blogging platform, you need to ensure that the domain name you registered is properly configured. If you are using a hosted service like WordPress.com or Tumblr simply follow the instructions provided by your vendor. If you are self-hosting WordPress, Jekyll, or different software, pay close attention to the following instructions.
Blogging About Controversial Topics
If the subject of your blog is truly controversial in nature, you may need to take extra steps to prevent an overzealous registrar or host from kicking you out. Such companies can’t take away your right to freedom of speech, but they are usually able to get rid of you as a customer for violating their own terms of service.
I wholeheartedly recommend nearlyfreespeech.net as both your registrar and hosting provider if you feel that a regular provider may take issue with your content.
The majority of tech bloggers don’t have to worry about all this, of course, but it’s something to keep in mind if you were to engage in legal yet highly controversial topics, such as discussions about security exploits, file sharing, etc.
For a self-hosted blog to be associated with a domain name, you’ll need to take two steps: set the DNS (domain name system) servers for the domain, and then add your domain to the appropriate DNS zone.
The first step usually requires you to use the domain registrar’s interface to set the nameservers to those of your hosting company
Next, you’ll need to use the interface provided by your hosting company (e.g., cPanel, Linode DNS Manager, etc.) to add your domain name or subdomain to their DNS zone. If you declared your domain name during the registration of your hosting account, this step should have already been taken care of for you.
As mentioned earlier, the rest of this blog will show you how to install and perform a basic configuration of your blog using self-hosted WordPress as the main tool.
Tips to guide Blogger users will be provided as well. If you opted for Jekyll, Octopress, TypePad, or any other different blogging platform, the information will still be useful to you. Read on.
Blogger and other non-WordPress users: Skip this section.
WordPress can be installed in several ways. I recommend that you install it from scratch because doing so is a quick, straightforward process. Taking this step will allow you to have the newest version from the get-go and then upgrade whenever an update is released.
Let’s get started by considering what we need in order for the from-scratch installation to work.
LAMP Stack Required
The overwhelming majority of shared hosting companies already provide a compatible LAMP (Linux, Apache, MySQL, PHP) stack (or some variation of it) for you. If you opted for a VPS, dedicated server, or cloud solution, you’ll need to ensure that all these components are installed, configured, and working properly.
WordPress requires a recent version of PHP, MySQL, and the mod_rewrite module if you’re using Apache as your web server. Requirements rarely change, but you can always find an updated list of them at wordpress.org/about/requirements. Apache and nginx are the recommended web servers, with nginx being significantly faster and less memory hungry than Apache.
Follow the instructions provided at codex.wordpress.org/Installing_WordPress to install WordPress on your server.
During the installation process, you should see a straightforward wizard similar to the one shown in
Once the setup is complete, do a quick sanity check by logging in at /wp-admin and taking a look around.
Blogger and other non-WordPress users: Read this step.
With WordPress correctly installed, it’s time for us to start configuring the default installation. Log into your admin section again by appending /wp-admin to the URL of your blog and submitting the credentials for the WordPress account you created during the setup stage.
Once logged in, you should see a series of menu entries in the left sidebar, WordPress's admin interface, on page 42. We’ll start from the top and work our way down to the bottom to perform an initial configuration.
Blogger and other non-WordPress users: Skip this step.
Click the Posts menu in the sidebar. In the main area of the screen, you should see a sample “Hello, World!” post that’s been created for you. Feel free to play with and edit it, then ultimately delete this sample post from your blog by clicking the Trash link that will appear when you hover over the post title. We want to start with a clean slate.
Blogger and other non-WordPress users: Resume reading here (pay particular attention to sidebars).
We can skip the Media menu and click Links instead. As you can see, there’s a series of default links grouped in the Blogroll category. Delete the existing links and replace them with your own set if you’d like to link to other relevant sites of yours or of your friends.
If you’re running a company blog, definitely place your key company links in the blogroll, too. Conversely, if you don’t have other sites or friends who blog, feel free to leave the blogroll empty.
In theory, blogrolls are meant to link to other blogs in your niche. The problem with this nice gesture is that your blogroll will typically end up in your sidebar, which in turn is then generally displayed on every single page of your blog. This has SEO consequences that negatively affect your blog while, at the same time, not providing much of a useful service to your readers.
Your homepage has a certain authority score that’s determined by a Google algorithm known as PageRank (sometimes shortened to PR, not to be confused with the other PR, meaning “press release”). The more people that link to you and the greater their respective PageRank scores, the higher your own score will be.
Likewise, every time you link to an external site, you’re implicitly telling Google to increase the PageRank of that site because you trust it. As well, albeit to a smaller extent, every time you link to internal pages, you are also increasing the PageRank of those specific pages on your site. You are telling Google that those internal pages are important.
If a given page on your blog links to 10 external sites and 2 internal pages, the PageRank you pass to the internal pages will be greatly reduced due to the presence of the external links. You can think of it as 1/12 each, instead of the half each, you’d have if you weren’t linking to external sites—even if the real math is actually more complex than that.
There are good reasons to link to other sites in your posts—as we’ll see in future blogs—including showing Google that your site is natural and not artificially built in order to score high in the SERP (again, search engine result pages).
Nevertheless, think twice before deciding if you want to have a site-wide blogroll. The alternatives of not having one or placing a list of links on a single Links page of your site are both better options in most cases.
When you click Pages, you’ll see a sample page. Delete it. Pages are different from posts. They don’t appear in your RSS feed, don’t have categories, and can have specific templates applied to them to make them look and behave differently from other pages.
They also tend to be linked to from the navigation menu. As such, they should be used for sticky information you want people to see (much like forums have sticky posts at the top).
While you’re in the Pages tab, go ahead and create an About page. This should contain information about who you are and what your blog is about, and it should definitely include some of the results of the mental exercise we did in the past blog in regard to why readers should stick around.
If you can, include a photograph of yourself, your office, or your whole team if you’re running a team blog (use the icons above the editing area to upload and insert multimedia content). Remember that a picture truly is worth a thousand words and that it can give a very human and relatable element to your blog.
When putting this page together, your tone should reflect how you want to come across on your site. In general, being friendly, approachable, and thankful to readers for their time and interest in your blog is definitely a safe bet in even the most professional context. Avoid boring, official biographies that are written in the third person (unless for comedic effect).
Don’t forget to include information on how you can be reached: include your full name (or pseudonym) and email address. As a successful blogger, you will be approached and pitched to by a variety of people.
Among the emails you’ll receive from such folks, you will find concrete opportunities, so you don’t want to make the task of tracking down your contact information difficult. (Some people have a dedicated Contact page for this purpose).
On this menu, skip Comments, and for the time being let’s also bypass Appearance and Plugins (we’ll come back to those two later). Click Users (you should see the user account you used to log in), then click the Edit link that appears when you hover on your username. Here you’ll be able to fill in more details about yourself.
Depending on the blog theme you’re using, some of this info may be shown publicly as well, so you may want to pay attention to what you share here. The only option you should really be careful with is Visual Editor.
Checking “Disable the visual editor when writing” will remove the WYSIWYG editor when editing posts and leave you with only the HTML
Pages and Blogrolls in Blogger
With Blogger you can create pages from the Pages menu. You can also define a blogroll by adding a Blog List or Link List gadget to the sidebar from within the Layout menu. If you don’t see the Layout menu/tab, you may have to switch to the most recent interface that Google offers.
The same applies to all other Blogger-related instructions and hints provided within this blog. code editor. I like to disable the visual editor because I prefer the control I get from writing HTML code directly.
Switching from Visual to Code view in the editor also has a habit of changing and rearranging your posts’ HTML code. This can break the post’s code at times. If you wish, start with the visual editor and disable it only if you find its behavior to be problematic.
Finally, ensure that your full name is shown via the “Display name publicly as” option. Even if you are using a pen name for your blog, it’s worth including a full name as opposed to “admin” or a nickname. This is a matter of giving the right perception to your readers of standing behind your writing and your blog.
Edit Your Blog’s Settings
Skip everything else in the sidebar and jump to Settings. When you click it, you should see General Settings in the main area and a series of submenu items in the sidebar. This is where most of your configuration lives. Let’s take a moment to dissect it.
In General Settings, you should ensure that the title of the blog is set exactly as you want it to appear. Eliminate the default tagline (i.e., “Just another WordPress site”) and define your own in its place.
Once again, refer to the exercise you did when we discussed finding the purpose of your blog to help create a good tagline. Your tagline is your motto and should reflect what your blog is all about. Or if nothing else, it should at least be witty or funny.
Click the Writing submenu under Settings. Here you can customize a few details that relate to posting. The only sections that are really worth your attention are “Post via e-mail,” Remote Publishing, and Update Services.
Reading Settings is where you define how many posts you’d like to see featured on your homepage and how many of your entries should appear in a new subscriber’s feed reader.
It’s up to you to decide what numbers you’d like to input here. Ten is a healthy compromise that pushes your content without overwhelming new visitors and subscribers. Start with the defaults and remember not to sweat the small stuff.
A much bigger and insidious issue is the debate of full vs. partial feed. An overwhelming majority of people will want a full feed in order to read your articles in Google Reader or in other feed readers of their choice.
However, there is also a minority who might be annoyed by the wealth of content you share with them if you opt for a full feed. You can’t win this one or make everyone happy, so there’s no sense in trying. In short, leave every setting in this section as it appears in the defaults.
In the Discussion Settings tab, you can customize your commenting policy and notifications entirely. Personally, I like to leave everything set to the defaults, with the following exceptions:
• Uncheck “Anyone posts a comment” and “Comment author must have a previously approved comment” and instead go with “An administrator must always approve the comment.” This enables comment moderation, with a single notification given by email when a new comment has been posted and is being held for approval.
No doubt the most controversial statement in this blog is my recommendation that you moderate comments. Moderation may slightly lower the overall number of comments you receive and the level of engagement seen in the comments your posts bring in, but doing so has several advantages when dealing with trolls, spammers, and flame wars that can arise from time to time in the comment section of your blog.
If you are ideologically opposed to the idea, simply uncheck the “An administrator must always approve the comment” option and instead check off that you want to be notified when “Anyone posts a comment.” This way you’ll at least know about new comments that are being posted and can then reply or remove them afterward.
Enable Akismet Antispam
Akismet is a must-have plugin for dealing with spam unless you are using a third-party commenting system that already includes some form of spam control.
The current settings that we have in place now should guarantee that no spam is going to end up on your blog. The problem is that you’ll still receive numerous email messages for spam comments that you need to manually reject.
Akismet, which ships with WordPress but is inactive by default, can take care of this for us. Click the Plugins menu item and activate Akismet. Once activated, this plugin will ask you for an API key that can be obtained by signing up at akismet.com.
Alternative Commenting Systems
The basic idea behind it is that you can embed a new comment system in place of the standard one. These commenting systems tend to have some bells and whistles that make them attractive, such as the ability for your readers to log in via Twitter or Facebook before leaving a comment as well as good built-in spam control.
Their popularity also implies that many users, particularly technical ones, will already have an account with the major players in this field. If they don’t, they can register at one blog that uses them and reuses that account on any other blog that uses the same system.
Three popular options are Disqus, IntenseDebate, and more recently, Facebook Comments. Facebook, in particular, is ubiquitous with users, be they technical or not, and would, in theory, make for an excellent choice. In fact, it even won over the popular blog TechCrunch, despite the less-than-enthusiastic reaction from some commenters.
Facebook Comments are automatically arranged by popularity (i.e., the number of “Likes”) and also enable you to see the real names of most of your commenter’s. If they’re logged into Facebook when commenting on your blog, users’ comments will be automatically associated with their Facebook profiles.
When people comment with their real name, they tend to be a lot more civil and careful in what they say. Unless commenters uncheck the option to do so, their comments on your post will also appear on their friends’ News Feeds, along with a link back to your article, further spreading your post via the popular social network.
However, three negative aspects need to be considered before uploading and activating a plugin for an alternative commenting system such as facebooks:
Dynamically loading the content from a third-party site tends to significantly slow down your pages’ loading time. This has a negative impact from both a UX and an SEO standpoint.
Third-party commenting systems are usually not “crawlable” by search engines. Their content will not be indexed, so you may miss out on showing up in the SERP for quite a few keywords that were organically included in the comment section by your commenters.
A third party will own your comments. Should this party change its policies or go out of business, you may or may not be able to revert back to the regular built-in WordPress comment system without data loss. As usual, when dealing with third parties, there is a risk for vendor lock-in, so ensure that you carefully read the conditions and export options before committing.
If you want to switch to Facebook Comments, I recommend Facebook Comments for WordPress. You’ll find it, along with other alternative plugins, by searching for Facebook Comments in the Plugin directory located at wordpress.org/extend/plugins or by clicking the “Add new” button after entering the Plugins area of your admin section.
Skip or customize Media as you wish (its defaults are generally fine), and click Privacy instead.
You unequivocally want to keep the “I would like my site to be visible to everyone, including search engines (such as Google, Bing, Technorati) and archivers” option selected. Without it, your blog will miss out on search engine traffic. This option is selected by default, so unless you unchecked it during the WordPress setup process, you should be safe.
Click Permalinks and you’ll be presented with Permalinks Settings. What we’ll change in this section is going to be absolutely crucial from an SEO standpoint, so do not skip this important step.
The term permalink is used to indicate the permanent URL of your posts. By default, WordPress will generate permalinks that have the following structure: http://yoursitename.com/?p=ID, where ID is the numeric identifier of your post. The problem with this URL structure is that search engines give a great deal of weight to the content of your URL.
For example, if a user is searching for “CoffeeScript tips” in Google, a post with a permalink including /ten-coffeescript-tips will appear highly relevant to the user’s query.
In fact, it contains the target keywords and little else. If the post was to be located at /?p=42, Google would determine your post’s relevance based solely on other factors, such as content and incoming links.
Regardless of your permalink structure, search engines will use plenty of other indicators to figure out the relevance and authority of your pages. It just so happens that the keyword density of your URLs is very important, so leaving this out would be foolish. (The portion of the permalink that comes after the domain name is also known as the slug.)
Plenty of blogs, even commercial ones, make this mistake. Since it’s such low-hanging fruit, change the permalink structure right away. To do so, you can select “Day and name” or “Month and name” or opt for a custom structure such as /%postname%/. These will create permalinks that include the title of your post in the URL.
Most SEO experts would opt for the last choice. Doing so has the advantage of increasing the density of the keywords (by removing unnecessary date-related characters). It also makes the URL shorter and can positively impact the perception of your content by sneakily hiding the date of your old content.
Go for the /%postname%/ slug, which is nice-looking and SEO-friendly. Just ensure that your theme takes care of showing the date and time of your posts and therefore doesn’t trick your users into thinking that obsolete content is actually more recent material.
When you click Save Changes, WordPress will update your .htaccess file if the web server has to write permissions on the file to do so and you’re using Apache. If WordPress is unable to write to the file, you’ll be advised to manually copy a snippet of code for mod_rewrite into your .htaccess file yourself.
Keep in mind that .htaccess is a hidden file on *nix systems such as Linux and Mac OS X, so it may not show up in your FTP program unless you show hidden files. (Cyberduck and FileZilla are good FTP clients you can use for free.) Finally, .htaccess is not required if you’re using nginx.
Enhance WordPress with Plugins
Blogger users: Skip this section.
There is a myriad of plugins available for self-hosted WordPress blogs that can be found at wordpress.org/extend/plugins or by searching through the Plugins menu.
To install plugins, you can download, unzip, and upload them to your wp-content/plugins folder on the server, then activate them in the Plugins section of your WordPress administrative interface.
Alternatively, if your web server has to write access to the wp-content/plugins folder, you can install them by following these simple steps:
1. Click the Plugins menu, then the “Add new” button or submenu link. There you can search for plugins by the term, Adding plugins via WordPress, on the page.
Steps Not Needed for Blogger
As you read through the WordPress instructions, you’ll find plenty of information that’s universally valid, regardless of your blogging platform of choice. However, there are a few suggestions that do not apply to Blogger users.
You can ignore update/ping services because such features are built into Blogger.
Blogger comes with a built-in spam filtering system. You don’t need any external service such as Akismet.
You can’t use a third-party commenting system. Thankfully the built-in commenting system is excellent and integrates with visitors’ Google, LiveJournal, Word-Press.com, TypePad, Open ID, and other accounts.
Permalinks are SEO-friendly in Blogger by default.
You are not able to, nor do you need to, install any of the other WordPress plugins listed in this and the next blog. This includes SEO, caching, and security plugins mentioned later on. If you want to see how extensible your platform is, you can check out the list of gadgets in the Layout menu area.
2. Click Install Now under the name of the desired plugin to install it. Once the installation is complete, you’ll be offered an Activate Plugin link that will enable you to actually activate the plugin.
Most plugins add their own menu entry in the admin section so that you can configure their specific options, if applicable.
The following is a list of plugins I commonly use for my blogs. You should consider installing most of them, but feel free to skip those that are not of interest to you. You can find each one by simply searching for it in the aforementioned Plugin directory.
Jetpack: A collection of features extracted from WordPress.com with the intent of providing the same functionality to self-hosted WordPress blogs. It includes in an ever-expanding list statistics, Twitter widgets, the WP.me
URL shortener for social media sharing, LaTeX support to embed mathematical formulas, an excellent spell checker known as “After the Deadline,” and more. You’ll be asked to register a WordPress.com account to enable all these features.
Google XML sitemaps: Creates and keeps an updated XML sitemap that aids Google in discovering and indexing every nook and cranny of your blog.
PuSHPress: This plugin is used to enable PuSH notifications for your post updates. In my experience, it has the advantage of helping to get your content indexed quickly by search engines. You can read more about PuSH on the home page of the protocol at code.google.com/p/pubsubhubbub if you are curious.
Contact Form: Easily create contact forms within pages without having to write a single line of PHP yourself. If you install it, include the associated CAPTCHA plugin to limit the amount of spam you receive from bots.
WP Authors: Creates a widget containing a list of blog authors, which can then be displayed in the sidebar. Useful for collective blogs.
WP Security Scan: Scans your WordPress installation for possible security threats. (If your site gets popular and profitable, it may be worth investing in a premium malware monitoring and removal service, such as Sucuri.)
Please note that this is not a complete list of all the plugins you may need. It’s a starting point, upon which we’ll build as the need arises. For example, in the next blog, we’ll discuss other plugins, including W3 Total Cache, an excellent caching suite that will speed up your WordPress blog immensely.
Pick a Professional Theme
The default WordPress look is clean and minimalist. Depending on your aesthetic preferences, you may like that look a lot. But it would be a mistake to settle for this default theme for three reasons:
1. Most new blogs use the default theme. Sticking with it won’t help your blog stand out from the crowd.
2. Visitors value eye candy. Beautiful design will greatly help your blog succeed.
3. The default theme has very limited features and customization options.
Spend some time evaluating other themes until you find one that fits your style and the type of blog you intend to run. If you’re running a team blog that will be updated on a daily basis, for example, a magazine- or even newspaper-style theme may be a good idea.
Free themes can be found at wordpress.org/extend/themes and on other sites around the Web. I generally don’t recommend that you opt for a free theme unless your budget is extremely tight. Premium themes that you purchase offer the following advantages:
There is an economic incentive for the developers to keep the themes up-to-date for the latest version of WordPress. Such themes are also generally updated and improved over time.
Purchased themes tend to offer all sorts of options and features that are not available with the average free theme, given that premium themes have to justify their price tag. Some include a full-fledged framework built on top of WordPress, which greatly extends its capabilities.
They don’t require you to advertise that you’re using a free theme and credit the designer in the footer (which then appears on every single page of your blog) or include affiliate links to dubious sponsors. Now, not all free themes are like that, but you’ll find not having to worry about such conditions quite refreshing.
Buying a feature-rich, well-designed theme is a wise investment that won’t cost you much (generally less than $100). Common premium themes are available from WooThemes, StudioPress (whose themes are built on top of its Genesis framework), and Elegant Themes.1 Other good providers can be found at wordpress.org/extend/themes/commercial.
Take the time to get to know your theme and read its documentation, if available. Common perks of premium themes include the ability to feature posts, display the home page as a newspaper with clickable summaries and icons rather than as the full posts, and many other appealing features.
If you can’t afford to or don’t want to commit funds to the project quite yet, you will certainly find a free theme that you’ll like and be able to customize yourself, though.
If you are creating this blog for a company, you don’t have to mimic the look of your main site and integrate your blog with the company site 100 percent. If you wish, you can make the blog a visually separate entity with a slightly different look and a greater degree of editorial freedom. An example of this approach can be seen at spittoon.23andme.com.
Given that company budgets (even startup ones) are usually larger than what your typical solo bloggers have at their disposal, you may even consider having a designer create a custom theme and logo for your company blog.
Another appealing option for those on a tighter budget is to heavily personalize one of the premium themes. They generally offer a great degree of control over their look and feel. And a relatively inexpensive logo can be commissioned on sites such as 99designs.
Enable Tracking of Your Site’s Visitors
Being able to understand who your visitors are and what they do when they arrive on your site is a fundamental part of running a successful blog. To accomplish this goal, we’ll need to set up a traffic analytics suite.
Understanding Traffic Statistics in the next blog we’ll discuss how to analyze the data you collect in greater detail, but for now, let’s start by choosing and installing one traffic analysis tool.
Third-party web-based analytics will, in fact, keep track of your traffic stats for years to come and will not be impacted by or require further maintenance if you were to move your blog to a different server. More importantly, the most prominent hosted analytics suites tend to be very sophisticated and can provide you with highly customized reports.
In particular, you should consider the following three analytics services, all of which are widely used.
Customizing Blogger’s Look and Feel
If you are using Blogger, you can select a variety of themes from the Template menu. This page also allows you to visually customize the template of your choice through a template designer.
If you require further flexibility, you can use HTML and CSS to edit the template directly. For example, the navigation bar at the top can be hidden via CSS. This doesn’t violate Google’s terms of service (contrary to popular belief).
Finally, you can edit your sidebar from the Layout page by adding and removing gadgets. Using the Follow by Email gadget, you can easily embed the FeedBurner newsletter signup form in your sidebar.
Regardless of what other traffic suites you decide to install, you really should use Google Analytics, which has become the de facto standard. It’s free and extremely rich in features (entire blogs have been written about it).
It also integrates well with Google’s other services, such as Google AdWords, which is great for keeping track of your return on investment if you ever need to run ads for any of your products.
Google Analytics makes it easy to share statistics with colleagues or prospective buyers as well. This is particularly useful for team sites or as proof of your traffic claims if you ever decide to sell your blog.
If you’d prefer not to install yet another plugin for such a small task, you’ll need to edit the footer of your blog. Some WordPress themes, particularly premium ones, offer the ability to enter footer or analytics code that will be dynamically added at the bottom of each page. If that’s the case for your theme, definitely add your tracking code there.
Finally, you have the option of editing your theme directly through a text editor. The file that you need to modify is wp-content/themes/yourtheme/footer.php (replace yourtheme with the actual folder for your theme).
(Of course, this is only an example. Use the tracking code that Google Analytics provided you with.)
Once the tracking code is installed, load your blog’s homepage once, then double-check its status in Google Analytics. If it’s been properly installed, you should receive a message along the lines of “Waiting for data,” or a “tracking code not installed” error if it hasn’t been.
Google Analytics is an amazing tool for Internet marketers and bloggers. Historically, the only downside has been that your statistics didn’t appear in real time, but rather it reflected data acquired several hours before.
This meant that very often you weren’t able to study a spike in blog traffic as it was actually happening. Instead, you had to settle for a postmortem analysis a few hours later.
More recently, Google introduced some real-time capabilities that enable you to investigate traffic spikes and check how many people are on your site during a given moment.
Blogger and other non-WordPress users: Skip this section.
Unlike Google Analytics, WordPress.com Stats is a plugin and service that’s only available for WordPress blogs (it can be hosted by WordPress.com itself or be self-hosted). It’s a free service; however, it requires an API key, which can be obtained by registering at WordPress.com.
If you’ve installed and activated the JetPack plugin in the previous blog, you should already have this feature ready and available to you as Site Stats in the admin menu (after having configured your API key, of course).
Alternatively, you can still install the plugin on its own and forgo the rest of JetPack. This applies at the time of writing; in the future, though, you might not be able to do so anymore.
WordPress statistics give you a nice snapshot of where your traffic is coming from, what search engine keywords lead people to find to your site, and which of your articles and pages are popular at the moment. Unfortunately, the simple interface offers little else. It’s also limited in practice, showing these metrics for only the past few days.
I’ve found the interface to be somewhat slow as well, at least when you start receiving many hundreds or thousands of page views per day.
Despite its evident shortcomings, you may still want to install it when you wish to quickly glance at incoming traffic in a way that’s faster than logging in and checking Google Analytics.
Blogger and other non-WordPress users: Resume reading here.
Clicky is an excellent real-time web analytics suite. It offers many of the same features as Google Analytics while having the advantage of being able to show you data for visitors who arrived at your site mere seconds ago.
As a user of the Chrome browser, I also enjoy using its Clicky Monitor extension, which allows me to quickly check on my sites’ stats without typing anything.
The number on the Clicky icon acts as an in-browser traffic notifier, showing the concurrent number of visitors on the currently selected site (if you have more than one configured). From time to time, I glance at it, and if I see a particularly large number, I investigate the spike.
Support for more platforms, including apps for iOS and Android can be found in the Apps & Plugins page at getclicky.com/user/#/help/apps-plugins.
Clicky is inexpensive, but it is a premium service. Its free plan lacks a number of premium features and is currently limited to recording just the first three thousand pageviews per day.
Still, the real-time nature of the stats that are available for free subscribers may make it worth signing up for, even if you don’t want to pay for the premium plans. (Expenses can add up. Opt for free subscription plans and only upgrade to paid versions when strictly needed.)
Installing Clicky on your blog is very similar to the procedure for including Google Analytics. After you’ve signed up and set up your site at getclicky.com, either obtain and install a dedicated plugin (e.g., Clicky by Yoast) or edit your footer to include the tracking code.
If you want to use both Google Analytics and Clicky, like I do, simply place Clicky’s tracking code above that of Google Analytics.
As with Google Analytics, we’ll explore how to get the best from Clicky in next blog.
So which of the three should you install? You really need to have Google Analytics, so the choice of a second option is between WordPress.com Stats and Clicky.
Installing both isn’t a problem, but if I had to pick just one, I’d go with Clicky. Its insight into your visitors’ browsing behavior and a large list of unique features make it a perfect real-time complement to Google Analytics.
Customize Your Sidebar
Your main sidebar is a crucial component of your blog. In fact, it will be shown prominently on virtually every page of your blog. Its position, usually on the right of your article’s content, makes it prime blog real estate that should be allocated wisely.
As you learn more from this blog and gather real-world experience as a blogger, you can revisit your sidebar to customize its contents however you like.
What Should You Include in Your Sidebar
Your sidebar, particularly the area above the fold at common screen resolutions, should include your “calls to action.” Think about the most important goals you have and what you want your visitors to do, and then adapt the sidebar accordingly.
For example, if your priority is to increase your page views and engage your readers more, you could add a list of recent posts and mention the top commenter toward the top of your sidebar.
In the beginning, you shouldn’t be overly concerned with making money from your blog; your main challenge is attracting readers. But let’s just say that at some point your primary goal will shift to or focus more on “monetizing” (i.e., making money via) your blog.
In that case, your sidebar should become a spot where you also advertise whatever you’re selling, be it your own product, someone else’s product through an affiliate link, sponsorship, ads, or anything else you’re comfortable with being paid to promote on your blog.
At the risk of putting some readers off, my blog is able to generate a lot of revenue relative to its traffic. Just don’t try this at home with a relatively new blog that isn’t well established.
Further down on the sidebar, you should also include your categories, tags (called labels on Blogger), recent posts, social media widgets that invite people to like or follow you, and so on. Keep in mind that the further down the sidebar an element is, the less visibility it will generally attract.
If your theme doesn’t include a search box at the top, make sure you add one toward the top of your sidebar. Likewise, if your pages, categories, or other important elements are not available elsewhere in the theme, ensure that you add them to the sidebar.
Sidebars and Heatmaps
Heatmaps are a tool that’s used to understand where users focus their attention on a given page.
A service such as crazyegg.com makes it easy to experiment and adjust elements on a theme or specific page so as to ensure that users are focusing on the things you want them to. When you try it on your own blog, you’ll quickly see how the top of your page and the sidebar tend to be attention grabbers.
As discussed, the sidebar is certainly a tool for getting users to subscribe, explore your site more, and take the kinds of actions that you’d like them to. Let’s not forget, however, that a sidebar is mainly a useful tool for your visitors.
Below the commercial stuff in my sidebar, for example, I include a disclaimer, recent posts, recent comments, categories, and so on. Don’t get so caught up in creating a self-serving sidebar that you forget to list purely useful stuff, too.
While you begin to think about which widgets you’d like to display in such a prominent spot, let’s take a look at how to actually add them to your sidebar.
Encourage Social Media Sharing
One of the quickest ways to market your content is to have your readers do the marketing for you. If all the readers who find your content useful were to share your site with their friends online, you’d quickly have more traffic than you could handle.
In practice, very few readers bother sharing your articles even if they found them to be exceptional. Depending on how explicit you are with your request and how much you solicit social media sharing, you’ll likely only receive a few mentions from other people.
For example, my article “The need for good vocational schools for programmers” that I published on ThesisScientist.com has received 10,933 visits to date.
According to Topsy, it received 47 retweets. Facebook reports 85 likes. If you do the math, you’ll quickly realize that only 1.20 percent of my visitors actually bothered sharing the article either on Twitter or on Facebook.
That’s OK. It’s still worth it, as these mentions are essentially free publicity that helps get your signal out there further, where it may be picked up by popular social media users, fellow bloggers, or perhaps even journalists.
Facebook, Twitter, and Google +1 Counters
If you read many blogs, you may have seen people showcasing more than a dozen social media icons at the bottom of their posts. Don’t bother doing this. In my experience, these icon buttons are a waste of time, as almost no one actually clicks them. It’s the paradox of choice at work.
If you ask me to take one, two, or a maximum of three actions, I may do so. If you offer me fifteen options, I might not know which one to take and I’ll feel less obliged to do anything at all.
If you want to provide these buttons as a service to your readers, you can use compact widgets from sites such as AddThis or ShareThis.
I would suggest that you start by including Facebook Like, Twitter, and Google +1 buttons in your articles via Add This. These buttons have the advantage of providing social proof because they show a counter of how many people have already shared your post with their friends.
Social Toolbars in Blogger
By default, Blogger already provides you with a social toolbar that includes Facebook, Twitter, and Google +1 among others. You also have the Addthis Sharing gadget at your disposal.
On the flip side, if you are struggling to attract traffic, they may unintentional-ally end up providing negative social proof (of how few fans you have) and in turn tell new visitors that nobody is reading and sharing your content.
That said, you need to start somewhere, and if you don’t include these buttons (perhaps without a counter at first), you certainly stand to have fewer people sharing your work around the Web.
Contrary to common belief, you’ll receive relatively little traffic from social networking sites like Facebook, Twitter, and Google+. In the example about my article, less than two hundred people came from Facebook, Twitter, and Google+ combined.
To make matters worse, in the past I’ve had Twitter superusers who have more than 150,000 followers retweet my articles to their followers, only to see just a few hundred visitors head over to my site as a result of this nice mention.
Why bother then? Aside from the argument that every little bit adds up, there is increasing evidence that search engines are going to consider more and more social indicators in their strategy to evaluate the importance and relevance of content (e.g., a link liked by a friend of yours is more likely to interest you than one that isn’t).
To install these buttons, you can embed the code provided by their respective sites or simply install Add This (also available as a plugin for several platforms, including WordPress). For WordPress, you can also enable the sharing feature that’s available in the JetPack plugin.
Reddit and Hacker News
For technical blogs, there are two large communities for which it may be worth having sharing buttons. They are Reddit, with its extensive list of subcommunities known as subreddits, and Hacker News.
In the previous section, I mentioned how less than two hundred visits to one of my recent articles came from Facebook, Twitter, and Google+ combined. What I didn’t tell you though, was that more than seven thousand people showed up from Reddit, specifically the Programming subreddit.
Likewise, Hacker News brought close to one thousand visitors to the article, despite the fact that my post didn’t get particularly popular on that site or make it to the home page as a popular story.
If your site is about programming, you should consider both Reddit and Hacker News buttons. If it’s more business or startup-oriented, then Hacker News alone may be more appropriate.
Just find a fine line (between too few and too many icons), and focus on the buttons that you care the most about. Don’t try to include too many, or their CTR (click-through rate) will quickly approach zero.
Win Over Subscribers
When your blog is starting out, your sole goal should be to attract new subscribers. Translating these regular readers into dollars or into the other benefits you may be after is something that you can concern yourself with once your site is already established and has been running for a few months.
In the beginning, your goal is to increase your subscriber count. Sure, other metrics such as visitors, page views, and time on the site, and bounce rate are all interesting and important in their own way.
But nothing beats subscribers as an indicator of growth (and that you are doing this whole blogging thing right). If your subscriber count isn’t growing, your blog is not living up to its full potential.
By subscribers, I mean readers that follow your blog via feed or receive your posts via email. Before discussing how to win over new subscribers, we’ll need a system that allows us to measure how many readers you have. That system is FeedBurner by Google.
Set Up FeedBurner
Note: At the time of this writing, FeedBurner has a new beta version. Unfortunately, it does not currently allow you to do much. You can’t, for example, create a new feed. For this reason, I provide instructions in this section that are specific to the current, non-beta version.
If the interface is different by the time you read this section, you may have to adapt the instructions and find the described features within the new user interface.
FeedBurner is a service that allows you to specify a feed and then provides you with a different feed URL that has analytics capabilities baked right in. Head over to feedburner.google.com and log in with your Google account. You’ll be asked to burn a feed by providing the URL of your site or its feed (by default http://yoursitename.com/feed for WordPress blogs).
If you receive an error such as “Received HTTP error: ’Not Found’ while fetching source feed,” it’s because you’ve either provided the wrong feed URL or do not have any posts yet. Creating a Welcome post in which you highlight what your blog is going to be about, as well as a little blurb about yourself, will take care of this issue.
Once your feed has been added successfully, FeedBurner will ask you to choose a feed title and address. You should use the name of your blog for the title and define a related address.
For example, the feed title may be “Coffee-Script Tips” and the address “coffeescripttips.” Your FeedBurner feed will then be available at feeds.feedburner.com/coffeescripttips.
This is the feed URL you must share from now on, not the old default one (i.e. “/feed”), to ensure that all your subscribers are accounted for in Feed-Burner’s statistics. In the next screen of the setup, select all the options except for enclosure downloads (unless you are creating a podcast).
Once you are done with the setup, you will be redirected to a page where you’ll be congratulated on your new feed and presented with a series of options for blogging engines.
For WordPress, you’ll be instructed to download a FeedBurner FeedSmith plugin. Follow the instructions that are provided for WordPress so that traffic to your preexisting feed will be redirected to your new FeedBurner one.
Keep in mind that some WordPress themes, such as the ones based on the Genesis framework by StudioPress, don’t require FeedBurner FeedSmith because they allow you to specify your FeedBurner ID within the settings for the theme.
You’ll also want to customize your feed further by making the following changes from within the FeedBurner interface.
In the Optimize tab, enable SmartFeed to maximize compatibility.
Within the same tab, also enable FeedFlare to include options such as “Email this,” “Save to del.icio.us,” “Share on Facebook,” and so on. These will appear at the bottom of your articles in your subscribers’ feeds (or at the bottom of emails for email subscribers).
Under Publicize, consider clicking Headline Animator to obtain a snippet of code that you can insert in your personal email signature to promote your latest posts in the rotation.
Activate PingShot, FeedCount, and Awareness API.
Leave Email Subscriptions and Chicklet Chooser alone for the time being, as we’ll be discussing them further in the coming sections.
You Need a Newsletter
A portion of your readers will want to follow your blog via email rather than a feed reader like Google Reader. It’s imperative that you provide a post-to-email service for those who wish to subscribe via email.
You have two main options when it comes to setting up an RSS-to-email newsletter. You can handle the newsletter yourself through a third-party newsletter management service such as MailChimp or Aweber,10 or you can let FeedBurner take care of it for you.
The advantage of FeedBurner is that it handles everything automatically for you. Once enabled through the Email Subscriptions link in the Publicize tab, all you really have to do is embed the Subscription Form Code provided by FeedBurner somewhere in your blog.
Google will take care of everything, including forwarding your posts automatically and providing a physical address in order to be compliant with current bulk email regulations (i.e., the CAN-SPAM act).
Invite People to Subscribe
When it comes to attracting subscribers, there are two variables at play: the number of visitors and your conversion rate. All things being equal, the larger the number of visitors, the higher the number of subscribers.
The problem is that if your conversion rate (from visitor to subscriber) is low, most of your effort to attract new visitors will be wasted. These visitors will reach your blog and then leave. Most are unlikely to ever come back.
The real issue then becomes increasing your subscriber conversion rate. Excellent content definitely helps, but that’s not enough in and of itself. You need to remind people that the subscription is available. Solicit them to take the kind of action you want.
Give Away a Freebie
If you want an even greater conversion rate, you may have to take things a step further. Don’t just invite people to join your newsletter: bribe them.
The easiest way to attract new subscribers is to offer them something for free when they sign up for your newsletter. For example, you could offer a short collection of CoffeeScript tips in PDF format, if your niche is CoffeeScript.
There are three caveats to this approach.
1. You can’t verify feed subscriptions, so you’ll have to tie this to email signups only.
2. You can’t automate this process with email subscription via FeedBurner. You will need your own newsletter, and you will have to create an autoresponder, which will include a link to the download for those who sign up. (In MailChimp, you could even include it in the confirmation email without setting up an autoresponder for the download).
3. Technical people tend to dislike the idea of having to sign up just to download a file, so you may get a few people complaining about it.
Remember, however, that you are not doing anything wrong—you are the one who sets the conditions for your own content. Users can always subscribe, download, and then unsubscribe if they wish.
Even if you want to ignore this freebie technique, which converts extremely well, you still need to prominently advertise your feed and email subscription options regardless.
Do so in two spots. The first and most obvious spot is somewhere at the top of your theme or in the sidebar. The second is at the bottom of your posts.
For the header of your theme or top of the sidebar, you can use the code provided by FeedBurner in the Publicize, Chicklet Counter section. There you can opt for a standard RSS icon or for a chicklet counter, which shows the current number of subscribers.
In the beginning, when you have less than five hundred subscribers, it’s probably better not to include a counter. Later on, including one will act as proof of your site’s popularity and can help convince more people that your blog is well worth following.
You’ll also want to grab and embed in your sidebar the code from Email Subscriptions in FeedBurner (or the equivalent signup form from your newsletter management provider). Requesting the first name along with an email address can be a powerful tool in your future email campaigns to make your messages come across as more personable.
The file that you need to edit to add custom code at the bottom of your posts is single.php, which you can find in your WordPress theme folder. (Assuming your theme doesn’t have an option for this too). At the bottom of each post on my own programming blog, I have a little message that says the following:
If you enjoyed this post, then make sure you subscribe to my Newsletter and/or Feed. Both the words Newsletter and Feed are linked to their respective signup pages.
Alternatively, you can use a plugin such as WP Greet Box or WP BTBuckets, which will greet your visitors with a custom message based on where they are coming from and invite them to subscribe at the top of your posts.
Within your posts, you’ll also want to refer to your subscription options when it’s fitting to do so. For example, if you are writing the first article in a series, you can suggest within the body of your article that your readers subscribe so as not to miss future installments.
Master On-page SEO with Platinum SEO
It’s important to ensure that your blog is properly indexed and evaluated by search engines. In the previous blog we saw a new permalink structure that will greatly aid your blog in being able to rank better.
We also briefly mentioned a couple of SEO plugins. In this section, we’ll quickly configure those plugins, as well as get acquainted with Google Webmaster Tools.
Configure Platinum SEO Pack
Install and activate the Platinum SEO plugin for WordPress if you haven’t already done so. More advanced plugins have been created, but Platinum SEO will ensure that all of your essentials are covered. As usual, we don’t want to sweat the small stuff.
In the admin section of your WordPress installation, you should see a new Platinum SEO menu where you can set a series of SEO-related options. Leave all the default values, but make the following changes:
Enter your home title, which should coincide with the name of your blog. Limit it to 70 characters or less so that it can appear in full as the title of your blog in the SERP.
Enter a natural sounding yet keyword-rich description of your blog that is actually relevant to your content in the Home Description text area.
All-in-One SEO Pack, WordPress SEO by Yoast, and SEO Ultimate are all good alternatives.
This meta tag is used by search engines to display a description in the SERP, so limit it to 320 characters or less.
List a series of comma-separated keywords or key phrases in the Home Keywords text area. Include less than twenty keywords. Not all search engines value these keywords (e.g., Google doesn’t), but they’re still worth specifying.
Change both Post Title Format and Page Title Format to remove | %blog_title%. The reason for this is that we want our posts and pages to rank based on keywords that are relevant to their titles. Excluding the blog name from a post or page title will increase the density of the target keywords.
Select “Use no index for Categories” so that you end up providing less duplicate content to search engines. Google’s official stance is that it doesn’t penalize duplicate content, but they are not fond of it either.
Regardless of Google’s views, there is no point in having the same post indexed under different URLs (the permalink and the Category page, for example).
When you are done, click Update Options to save these changes.
Configure Your Google XML Sitemap
Continuing on our quest to get search engines to notice and index all of our valuable content, we need to install and activate the Google XML Sitemap plugin for WordPress. You’ll find the configuration options under Settings as XML-Sitemap. In truth, there are countless options available, but the default selections work just fine.
All you have to do now is generate the initial map by clicking the link provided (i.e., “Click here to build it the first time”).
Set Up Google Webmaster Tools
Before putting our on-page SEO configuration to rest, I encourage you to sign up with Google Webmaster Tools at google.com/webmasters/tools.
This is a set of invaluable tools that helps you better understand how Google sees your site. Among this site’s many features, you’ll be able to diagnose if your site is being properly crawled, which keywords Google thinks are relevant to your blog, what sites link to you, the impact of Google +1 on your blog, whether Google has any suggestions for you, and much more.
If you were to ever rename your blog’s domain, Webmaster Tools will also enable you to inform Google of your change of address (but you’ll need to set up the HTTP 301 redirects yourself). Keep in mind that changing your domain name is generally a terrible idea and should be considered only as a last resort.
Many good things can be said about WordPress, but speed isn’t one them. A default installation connects to the database and dynamically generates content with each request, thus becoming extremely demanding on your server’s resources.
When you first start blogging, your main challenge is to attract eyeballs, so a slow CMS may not be a huge deal initially. However, by following the roadmap that I outline in this blog, you may manage to attract several thousand visitors in the span of a few hours upon publishing and subsequently promoting a new post—even in your early days as a blogger.
A vanilla WordPress installation will most likely die under the weight of so many requests, and you certainly don’t want to see your site become unresponsive when so many people are eager to read what you’ve written—what an ugly, if not uncommon, first impression that would be. So let’s see what we can do to help prevent this situation.
Server side, if you have control over your server, feel free to optimize the optimizable. Use nginx instead of Apache, and configure both PHP and MySQL to make them speedier than their default configurations. More importantly, however, you must install a caching plugin.
Two leading WordPress caching plugins are W3 Total Cache and WP Super Cache. I personally tend to prefer W3 Total Cache because it’s currently a more complete caching solution, with multiple options that are not available in WP Super Cache. Nevertheless, both are excellent and will speed up your blog immensely.
Even on shared hosting, a properly cached WordPress installation can easily handle thousands of visitors. The magic of caching lies in its ability to serve static versions of dynamically generated pages. Once a cached version of a page has been generated, the performance levels are not far off from those of a static HTML page.
Don’t forget to monitor your blog’s uptime with a service such as UptimeRobot or Pingdom.
Configure W3 Total Cache
Once you’ve installed W3 Total Cache, you’ll want to configure it in the Performance menu that will be added to your admin section. Enable the page cache, object cache, and browser cache.
Those should get you properly covered. If you are a server pro and have fancy caching servers such as Varnish installed on your server, you can specify its IP address through the plugin as well.
Please note that you may receive error messages if W3 Total Cache is unable to write over your web server’s configuration file or create a cache folder. Thankfully, for each error of this kind, the plugin provides a good explanation of what you need to do to fix it.
The plugin allows you to test your settings in preview mode to ensure that everything looks good before committing to these changes.
To conclude this section, two excellent browser extensions for learning more about what could be improved performance-wise are Google Page Speed and YSlow.Page Speed is also provided as a service and not just as a browser extension.
W3 Total Cache integrates with Google Page Speed, provided you register for an API key. When you do so, your performance advice will be presented to you in your WordPress dashboard upon logging into the admin section of your blog. Finally, you can also test the speed of your blog online with WebpageTest.
Enable Code Highlighting in Your Posts
Before wrapping up this blog, let’s discuss how to embed highlighted code, a task that most technical bloggers need to do. By default, you can embed small pieces of code in your paragraphs by using the <code> HTML tag.
For snippets of code that span several lines, you can use <pre> instead. Your code will appear in the right monospaced font but won’t be colored or highlighted, so that it’s more readable and easier on the eyes.
I invite you to consider the following solutions.
Use a WordPress plugin. If you are using WordPress, there are many options to choose from, including Prettify GC Syntax Highlighter, Google Syntax Highlighter for WordPress, and Syntax Highlighter MT.
Use a snippet-sharing service. gist.github.com is probably one of the best services of its kind, and this too has the advantage of working even if your blog engine isn’t WordPress.
Use a command-line tool. If you live and breathe the shell, you may want to consider a syntax highlighter tool such as Pygments.
Once you’ve uploaded and linked the CSS theme of your choice, you’ll be able to copy the HTML output from the tool directly into your posts. Of course, this method will work regardless of your blog engine.