Before I begin, I'd like to make a couple points:
- This is not a discussion about WP "silos". I don't do silos, know nothing about silos and don't really care about the whole concept.
- Everyone does things differently.
The basic idea is to have my sites structured like this (credit to yukon for recommending yEd graph editor):
You can think about this website as a bunch of mini sites joined into one structure.
For those of you having trouble following the internal linking structure, here's a simple rule: pick any rectangle (homepage, landing page or inner page) and follow links out of it. If there's an arrow leading to any other rectangle, then there's a link joining both of those rectangles. If there isn't an arrow (not a line), then there is no link. That's it.
So, my websites have primary navigation (usually top menu, right under the header) and secondary navigation (this is only visible when on one of the landing pages or inner pages).
Secondary navigation can be in the form of in-content links (like excerpts at the end of a page linking to related pages) or a dynamic sidebar (see below for plugin recommendations). Secondary navigation isn't global, meaning that all links are contained inside a closed structure. Primary navigation (for example a top menu) is global, meaning that it's accessible from any page/lander/homepage.
Hope that clears things up a little.
Here's my workflow:
1. Install WordPress and upload a theme.
I use Thesis and Genesis, but any theme works. I've done this using the default (twenty ten...?) theme.
2. Create a static home page.
Build a homepage and assign it to be static under WP settings. My homepage targets a very broad/big keyword along with about 20+ long-tails (think vision/eyes/eye health/healthy eyes).
I have over 1000 words of unique content on the homepage PLUS unique excerpts with links to my "landing pages". I build them myself using simple html+css formatting inside the page body.
If you have no html/css skills, you can use the plugin from part 3 (below) to include excerpts of some of your landing pages (don't forget to assign ordering to your landing pages otherwise they will be listed randomly). Or get a theme that comes with lots of customization options (such as Genesis -> "lifestyle").
3. Create top level pages (landing pages).
This is where I talk about the sub-niche in general and target a large keyword (such as eye conditions) plus long-tails. These pages are typically 1500-2500 words long. Well formatted with links to inner pages.
Yo can either link straight to your inner pages or use a plugin called [pagelist] (link to plugin) to insert inner page links+excerpt anywhere you like. That plugin is easy to use and very convenient for people with no coding skills.
If you choose to go with the "pagelist" plugin, you should be using this shortcode within your page body: [pagelist_ext] (displays excerpts of all sub-pages) or [pagelist_ext include="page ID, page ID2, etc"] (select which pages you want included). The second piece of code works best on the homepage (has no sub-ages) or when you don't want to list all of the inner-pages (for example, you can use these shortcodes throughout your page body and include unique excerpts in different places).
You can also use a sidebar widget that shows ONLY the child pages (when you're on a landing page) OR sibling pages (when you're on one of the inner pages). The plugin that I've tested to work well is called SubPages (link to plugin). This works pretty well and is very simple to use.
It's really up to your how you choose to interlink within each landing page area. Sometimes it makes sense to use a sidebar plus some in-content excerpts. Or a sidebar and simple in-content links. Or all three combined (sidebar, some in-content excerpts and some regular links). As long as the links are contained within one sub-structure, it's all good. Think about what your readers would want.
4. Create supporting pages (terms, contact, about (??) and others). Move these pages to the footer.
Some themes come with footer menus by default, while others may require minor coding/editing skills. Most of the time it makes sense to edit a file called footer.php (inside your theme folder) and put the links in manually.
5. Remove all default sidebar widgets.
Well, I add global widgets later on... especially for social stuff like Twitter, giveaways, forum banners, ads, erc...
6. Upload plugins:
- Contact form 7 (if your theme doesn't have a contact page template).
- Secure WP.
- SEO by Yoast (or Platinum SEO, both get the job done).
- SubPages plugin (optional - depends on your setup).
- "pagelist" plugin (optional - depends on your setup).
- Caching plugin (W3 Total Cache or Super Cache both work).
- Google XML Sitemaps (or use sitemaps from "SEO by Yoast").
I make sure that each page has at least 400 words of content, though most end up being 700-2000 words long. A lot of research goes into these articles.
These pages also go after multiple keywords. Aim for 2-4 main keywords per page (long-tails can't be predicted tbh).
8. Write a lot of great content and interlink plenty.
I like to interlink from content (but don't link out to inner pages and landing pages that the page doesn't belong to).
So that's my basic setup. The beauty of it is that I don't need any special themes or paid plugins. Please note that I don't use posts or categories anywhere.
Not using categories and posts comes in handy if you decide to create a blog. You can always add a new section to the site, call it /blog or /news and blog away about your niche. These blog posts often link to inner and landing pages (but not always).
Now some thoughts/tips/ideas:
1. Noindex category pages, archives, tag archives and author archives (unless you also have a blog). Can be done using almost any SEO plugin.
2. I use a WP backup plugin connected to amazon s3 for quick backups. Do it. Seriously, make backups.
3. Get rid of useless bylines.
4. Use XML sitemaps. Yoast SEO can do this, or get Google XML Sitemaps for this. There's no reason not to have a proper sitemap that search engine bots can read.
5. Don't over think this stuff. Structure isn't everything (but it is important). If you're going to spend days or even months building a good website - do it right. Spend time doing niche research, analyze your competition, plan out a good structure for your site and build it. Then do high quality SEO.
6. If your site gets big, you might want to add a blog or a forum. If you add a blog, simply remove noindex from category pages and you're good. Since we're using pages to set up the main site, there aren't going to be any conflicts. A blog can also be called "news", which is perfect for large websites in big niches. I use this setup on one of my sites.
When researching your pages, try to group similar keywords/pages together or even merge them into one.
So, let's say (these are titles/keywords):
Homepage: vision, eye care, eye health, healthy eyes, etc (1000 words excerpts from landing pages).
Landing page one: nutrition and eyes (1500-2500 words)
Inner page one: omega-3 fatty acids and eye health (600-1000 words)
Inner page two: vitamin A for healthier eyes (600-1000 words)
Landing page two: eye diseases (1500-2500 words)
Inner page one: eye infections (1000-1500 words)
Inner page two: cataracts (1000-2000 words)
Landing page three: contact lenses (800-1500 words)
Inner page one: contact lenses for dry eyes (600-1000 words)
Inner page two: tips for wearing contact lenses (1000-1500 words)
Inner page three: types of contact lenses (800-1500 words)
Article length #'s are just rough estimates, it depends on how much content there is to write about. Try to cover EVERYTHING you can, do proper research and don't leave **** out.
Use tables, graphs and lists when writing. Include "HEALTHY TIP" boxes and content tables (especially on long pages).
Another thing which I like to use is creating CSS3 tabs to link to related pages (thus replacing secondary navigation sidebar/excerpts). See Stress Help Center - Helpguide.org for a good example. You can buy CSS3 tab codes from codecanyon or look for free plugins that come with shortcodes. There are many ways to do this.
I'll add more to this post later.