Everybody around you seems to be blogging and talk about effective and SEO-friendly content. You get all of this but don’t know how would you write SEO-friendly content. Where do you start? And what to blog about? How to structure content so that it shows up on Google SERP and drive traffic to your blog.
If you are interested in details, read on!
Where to Blog?
The following websites are the easiest ways to start a new blog:
- wordpress.com (simple, most widely used, and highly customizable)
- blogger.com (backed by Google)
Each of them have a free offering, with simple and easy-to-use interface.
If you don’t know which one to pick, start with wordpress.com. It gives you 3GB space. My entire blog with all themes, images, media, text is ~416 MB. So there is a good likelihood that you may not exceed 3GB. If you are feeling adventurous then you can host a WordPress instance on OpenShift. This is also fairly straight forward and gives you more control of the WordPress instance (customization, plugins, menus, etc). But the basic one on wordpress.com is good to start with.
If you are one of those nerdy types, then you can even consider setting up Awestruct/Asciidoc-based blog as well.
Another option is GitHub Pages is another option. This is particularly useful if you are contributing on GitHub. Otherwise one of the earlier options is easier and simpler to use.
Migrate from an existing blog?
Do you have an existing blog on a non-Wordpress site? There are plenty of plugins to migrate from those platforms to WordPress:
- Blogger to WordPress
- Movable Type and TypePad to WordPress
- RSS Posts
- CSV Files
- From another WordPress instance
Your blog is only relevant if it shows up in Google’s SERP. Several of the guidelines below are provided to get a higher SEO for your blog entry, or making it SEO-friendly. Note, that it takes time for the blog to start showing up in first page, so be patient!
Guidelines for SEO-friendly
- Blog Objective: Choose an appropriate blog objective to provide context to your readers. This will set the tone for your blog readers on what to expect. For example “This blog will talk about middleware solutions using JBoss technologies”. Some WordPress themes shows the purpose in the header or sidebar all the time. Otherwise its common to create first entry as “welcome entry”, for example: http://blog.arungupta.me/2013/10/welcome-to-miles-to-go/.
- Content Objective: Each blog entry can have a variety of content such as Tech Tip, How To, Product announcement, Conference report, Webinar announcement/rerun, cross-posting from another blog or some other purpose. It will be targeted to a different set of audience accordingly. Its important to clearly identify the style and audience of for each blog. This is important to begin with at least. Readers can get used to the style as they keep coming back to your blog. Here are some samples:
- “This blog will show you how to get started with JBoss Fuse on OpenShift”
- “Have you ever felt the need for your applications to perform faster? This blog will show you JBoss Data Grid enables that”
- “Red Hat Summit Call for Papers is live. This blog will provide more detailed information on how to submit a paper to this awesome conference”.
- “This webinar shows how create a Java EE workflow on OpenShift using WildFly, JBoss Tools, Forge, Arquillian, and OpenShift.”
- Blog Entry Title is the first introduction to the content. Some specific tips about it.
- Make sure its brief and conveys the purpose very clearly. A long and drawn-out title would make the reader bookmark it for later reading (which generally never happens) as opposed to reading it in the first time itself. There have been several occasions where I’ve started with a draft title, created the content, and completely rewrote the title to align based upon the keywords that highlight the content. Ask yourself “If I read this blog title and content, do they match?”. If not, change the title.
- Make sure the title includes all the keywords that are relevant to the content. This allows for a better SEO optimization of your content. More on this later.
- Google shows up to 70 characters (including spaces) of a page’s title in its search results. If a page title exceeds 70 characters, Google will show as many whole words as it can, and the rest are replaced with an ellipsis (…). So a good recommendation is to keep your title under 60 characters. This accommodates for capital letters and letters like “m” and “w” that take more space than letters like “i” and “l”.
- WordPress allows title and URL to be separate. Avoid usage of “noisy” words such as conjunction in the title, and definitely in the URL.
- WordPress blog entries are effectively an HTML page. By default, WordPress takes the Blog Entry Title and appends Blog Title to it to create the <title> tag of the HTML page. This is good because the words earlier in the title are given more emphasis. But be careful if you are using some other option. You can also SEO plugins in WordPress that add relevant metadata to your blog for a possible better ranking.
- Change Permalink so that the URL is “timeless”. By default, WordPress include month/day in the URL and does not have any benefit. This can be done by going to Settings, Permalinks and changing the URL type to just include /%postname%/. More on this here.
- Key purpose of the blog entry should be highlighted at the beginning.
- Write in short sentences. Try to format text using bullets, different level headings, tables, images.
- Make sure the content has valid HTML/CSS. WordPress visual editor will take care of this for you. If you are authoring blog offline and copy/pasting to your blog then make sure visual editor can render it correctly. Otherwise a missing tag or incorrect CSS could mess up the whole site.
- Good to quote other blogs, articles, websites, and third-party content. Make sure to link back to them and give proper credits. If you are linking to any JBoss related blogs, its highly recommended to link from planet.jboss.org.
- Tables: Use Easy Table plugin for generating tables easily.
- Code: Use Crayon Syntax Highlighter for syntax coloring code fragments. It supports multiple languages, themes, fonts, and is even integrated in the editor.
- Multi-part blogs: If a particular blog entry has started becoming too big (say 2-3+ pages) then the audience may lose interest in it. Its better to break the blog into multiple parts and set the tone in the first blog. This also allows you to build a cadence for your blog. Sometimes a bigger blog entry is fine as that provides a better context and story. The decision is purely context dependent.
- Media rich: Make your blog colorful by adding pictures of architecture diagrams, events, conference trips, book front page or whatever you are talking about. Upload your slides to slideshare.net and embed the slides. Several conferences have been sharing video replay of sessions and those are great candidates to be included. Consider adding twitter cards for a more interactive tweetsphere. At the least, one or two pictures is always better than plain boring text
- Videos: Host your videos, such as recorded screencasts, on youtube.com or vimeo.com. Its highly recommended to embed them in the blog, as opposed to just creating a link to them. This not only gives the user a visual cue about the video, but also gives them an opportunity to play inline.
- Images (details on image SEO)
- Google can crawl both the HTML page the image is embedded in, and the image itself;
- Image is in one of our supported formats: BMP, GIF, JPEG, PNG, WebP or SVG.
- Make sure image filename is related to the image’s content.
- Alt attribute of the image should describe the image in a human-friendly way.
- Also helps if the HTML page’s textual contents as well as the text near the image are related to the image.
- Google is also looking at the image EXIF information. There are some tools to edit those. It doesn’t hurt to add even more keywords and information as part of the EXIF ImageDescription tag. Use ExifTool to edit EXIF information.
- Include links to tutorial on redhat.com or jboss.org as appropriate. Make sure the anchor text is directly relevant to the link. For example “BPMS” should link to http://www.jboss.org/products/bpmsuite/overview/.
- Include links to forums, issue tracker, twitter handle. There should always be some means for readers to contact you or ask questions about the content that is being talked about.
- Always include a link to download or a “try” URL on openshift.com
- Optimize page speed
- Google provide PageSpeed Insights. It analyzes the content of a webpage and generate suggestions to make that webpage faster on mobile devices and desktop.
- Use EWWW Image Optimizer plugin in WordPress to either Bulk Optimize previously loaded images, or automatically optimize any new image that is uploaded. At least PHP 5.3 is required for this.
Here is the complete set of WordPress plugins on my blog:
|Plugin Name/Website||Header 2|
|Akismet||Checks your comments against the Akismet Web service to see if they look like spam or not|
|Captcha||Allows you to implement super security captcha form into web forms|
|Crayon Syntax Highlighter||Syntax Highlighter supporting multiple languages, themes, fonts, highlighting from a URL, local file or post text|
|Display PHP Version||Displays the current PHP version in the “At a Glance” admin dashboard widget|
|Easy Table||Create table in post, page, or widget in easy way using CSV format. This can also display table from CSV file.|
|EWWW Image Optimizer||Reduce file sizes for images in WordPress using lossless/lossy methods and image format conversion.|
|FD Feedburner Plugin||Redirects the main feed and optionally the comments feed seamlessly and transparently to Feedburner.com.|
|Google XML Sitemaps||Generate a special XML sitemap which will help search engines like Google, Bing, Yahoo and Ask.com to better index your blog|
|Quttera Web Malware Scanner||Scans your WordPress website for known and unknown malware and other suspicious activities|
|Share a Draft||Let your friends preview one of your drafts, without giving them permissions to edit posts in your blog|
|Smart 404||Automatically redirect to the content the user was most likely after, or show suggestions, instead of showing an unhelpful 404 error.|
|Sociable||Enable simplified sharing of blog/pages sharing on social media|
|Tiny Google Analytics||Adds Google Analytics Tracking Code using an optimzed code|
|Ultimate Tag Cloud Widget||Configurable tag cloud widget|
|UpdraftPlus – Backup/Restore||Backup and restoration made easy. Complete backups; manual or scheduled (backup to S3, Dropbox, Google Drive, Rackspace, FTP, SFTP, email + others).|
|WordPress SEO||Improve your WordPress SEO|
|WP Custom Search||Allows searching by custom post types on your website.|
|WP Open Graph||Add facebook open graph protocol to your blog|
|Yet Another Related Posts Plugin||Display a list of related posts on your site based on a powerful unique algorithm.|
More details on WordPress SEO.
What are your tips for making your blog SEO-friendly?