Wordpress As Cms (WordCamp Ireland Talk)

Preview:

DESCRIPTION

Tips on how to use self hosted WordPress as a CMS to manage not only a blog but a more traditional website.

Citation preview

WordPress as a CMS

frankprendergast.ie 2

WordPress as a CMS

“WordPress started as just a blogging system,

but has evolved to be used as full content

management system and so much more

through the thousands of plugins, widgets, and

themes, WordPress is limited only by your

imagination. (And tech chops.)”

WordPress.org/about/

frankprendergast.ie 3

WordPress.org / WordPress.com

● This talk will focus on a self hosted WordPress install (WordPress.org)

● Recommend self hosted for increased control

frankprendergast.ie 4

Quick Overview

● Concept: WordPress / CMS– Content Types– Navigation

● Tips:– Permalinks– Where to find Themes– Onsite SEO– Contact Forms– Analytics

frankprendergast.ie 10

WordPress is a CMS

● CMS = Content Management System● Presentation & Structuring of content to create

the familiar experience of a Website● Simple Example: 'Static' Pages + Blog/News

frankprendergast.ie 11

Posts & Pages

● Posts– reverse chronological – blog

● Pages– defined hierarchy – static site content

Containers that hold content.

frankprendergast.ie 12

A tip for Pages

● Pages (generally) don't require comments● Open up Page.php● Check for and remove:

<?php comments_template(); ?>

frankprendergast.ie 13

Categories & Tags

● Categories– A post must be

associated with at least one Category

– Pages - no categories– Categories can be

hierarchical– Few broad

categorisations

● Tags– Tags are optional– Pages can be tagged– Tags are unstructured– Many specific tags

Categories & Tags are labels do not impose structure but provide views of related content

frankprendergast.ie 14

Our site structure

frankprendergast.ie 15

Page Order & Hierarchy

frankprendergast.ie 16

Page Order & Hierarchy

frankprendergast.ie 17

Static Front Page

● Set a page as your home page and specify another page to be your blog

● Settings > Reading

frankprendergast.ie 18

Permalinks

● Settings > Permalink● One I use: /blog/%post_id%/%postname%/

frankprendergast.ie 19

Permalinks

● http://codex.wordpress.org/Using_Permalinks● Make sure to end your structure with either

%post_id% or %postname% so that each permalink points to an individual post.

● For performance reasons [...] it is best to start your permalink structure with a numeric field, such as the year or post ID.

● Some people just use %postname%

frankprendergast.ie 20

Navigation Hierarchy

● When planning your site – create clear hierarchy

● Determine best navigation approach– Top nav + side subnav – Folding sidenav– Fly out menus

● Find appropriate theme / navigation plugin combination

frankprendergast.ie 21

Navigation Hierarchy - My Plugin

● Developed for me by John Blackbourn– http://johnblackbourn.com/

● WordPress Better Navigation– Widgetised– Displays Page Tree

● With or without top level● Expand children / all descendants of current page

frankprendergast.ie 22

Don't Link to Current Page

● Jakob Nielsen http://www.useit.com/alertbox/20031110.html

● Analytics – Example: up to 20% of users clicked on the link for the page they were on

● Theme Dependant – check your site● Plugin:

http://frankprendergast.ie/resources/remove-link-to-current-page-in-wordpress/

frankprendergast.ie 23

Themes

● Free & Premium ($19 - $150 - ??)● http://wordpress.org/extend/themes/● http://themeforest.net/● http://www.elegantthemes.com/● http://www.woothemes.com/themes/● Most have a CMS category● From pure design to all kinds of functionality

frankprendergast.ie 24

xkcd.com

frankprendergast.ie 25

SEO / Headspace

● Headspace 2 – my favourite SEO plugin● Page Titles – keywords, attention grabbing,

relevant● Description – elevator pitch to get clicks

frankprendergast.ie 26

SEO / Headspace

frankprendergast.ie 27

SEO / Headspace

For HeadSpace Titles to work as expected -

In header.php find title tageg default theme:<title><?php wp_title('&laquo;', true, 'right'); ?> <?php bloginfo('name'); ?></title>

And replace with:<title><?php wp_title(''); ?></title>

frankprendergast.ie 28

SEO / Headspace

Post / Page headspace settings

frankprendergast.ie 29

Contact Forms

● Contact Form 7– Popular, quite simple, fairly flexible

● cforms II– Quite complex, incredibly flexible

● Gravity Forms (www.gravityforms.com)– Not free ($39 single license), very flexible, simple &

support available

frankprendergast.ie 30

Web Stats / Analytics

● A good web statistics package gives you information on how people find & interact with your site and allows you to improve

● Google Analytics is free & excellent● Headspace allows you to add Analytics & other

stats packages easily

frankprendergast.ie 31

Analytics

frankprendergast.ie 32

Analytics

frankprendergast.ie 33

What to do...

● Develop clear content / navigation structures● Create static pages & hierarchy● Set static frontpage● Find a theme to suit your needs● Use Pretty Permalinks● Do some basic SEO● Implement a contact form● Add Analytics

frankprendergast.ie 34

Honourable Mentions

● Maintenance Mode (plugin)● WP Super Cache (plugin)● Subscribe to Comments (plugin)● Feedburner & Email Sub (setup & plugin)

– http://tinyurl.com/email-sub-rss● Google Webmaster Tools

frankprendergast.ie 35

Where to next?

● Development areas:– Page Templates– Custom Loops– Custom Themes

Thank You So Much!

xkcd.com