105
Shelley Keith and Stephanie Leary The WordPress University

The WordPress University

Embed Size (px)

Citation preview

Page 1: The WordPress University

Shelley Keith and Stephanie Leary

The WordPress University

New book coming Fall 2014

Content Strategy for WordPressdemonstrates how to build structured

content for higher ed sites

Sign up to be notified when itrsquos outhttpslearymelist

Who we areShelley (sk140)

Lone web geek on a campus of ~3500 students and 400 facultystaff

HEWEB program committee since 2006 Chaired regional HEWEB 2010 amp 2011 events

Launched WPMU in May 2009 Alone

Stephanie (sleary)

Lone web geek in an office of 6 (+45 student tutors) serving 50000 students

HEWEB program committee 2005-2009

Launched single WP sites in 2008 consolidated network August 2010

17 plugins on Extend

We mad

e this

Why WordPress

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 2: The WordPress University

New book coming Fall 2014

Content Strategy for WordPressdemonstrates how to build structured

content for higher ed sites

Sign up to be notified when itrsquos outhttpslearymelist

Who we areShelley (sk140)

Lone web geek on a campus of ~3500 students and 400 facultystaff

HEWEB program committee since 2006 Chaired regional HEWEB 2010 amp 2011 events

Launched WPMU in May 2009 Alone

Stephanie (sleary)

Lone web geek in an office of 6 (+45 student tutors) serving 50000 students

HEWEB program committee 2005-2009

Launched single WP sites in 2008 consolidated network August 2010

17 plugins on Extend

We mad

e this

Why WordPress

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 3: The WordPress University

Who we areShelley (sk140)

Lone web geek on a campus of ~3500 students and 400 facultystaff

HEWEB program committee since 2006 Chaired regional HEWEB 2010 amp 2011 events

Launched WPMU in May 2009 Alone

Stephanie (sleary)

Lone web geek in an office of 6 (+45 student tutors) serving 50000 students

HEWEB program committee 2005-2009

Launched single WP sites in 2008 consolidated network August 2010

17 plugins on Extend

We mad

e this

Why WordPress

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 4: The WordPress University

We mad

e this

Why WordPress

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 5: The WordPress University

Why WordPress

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 6: The WordPress University

Why WordPressShelley 2005

bull Zero dedicated web staff

bull No budget

bull 16000 html files

bull Rampant duplication

bull Headers and navigation files (template)

bull Images

bull 4700 broken links

bull No search

bull No site map

bull No analytics

bull No remote access

bull No process

bull No hope

bull MS FrontPage

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 7: The WordPress University

Why WordPress Stephanie 2008

bull Creaky Mambo site precariously upgraded to Joomla 115

bull 15 wasnt out yet beta broke our theme and all our plugins

bull Confusing divisions of content in admin screens

bull Comments required plugin [mxc] code inserted into content

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 8: The WordPress University

Why WordPress Stephanie 2008

bull No RSS feeds My predecessor had a desktop app to generate them by hand

bull No podcasting Uploaded MP3s to FTP server inserted links did RSS by hand

bull Terrible search also plugin-based

bull No budget

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 9: The WordPress University

The Drupal Detour(a 17-month mistake)

bull 6 was out but plugins hadnt been updated

bull Emulating WPs simple editing UI -- rich text editor media uploadinsert -- required 3 plugins meant to work together They didnt

bull Post editing UI overwhelmed by taxonomies and podcasting module

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 10: The WordPress University

The Drupal Detour(a 17-month mistake)

bull Clean URL module flaky self-contradictory couldnt stabilize

bull View creation required masters degree in HCI

bull Couldnt create multiple blogs without tying them to users

bull Recommended upgrade process documented at 18 hours

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 11: The WordPress University

Advantagesbull UI for posts and pages EASY

bull Scheduling EASY

bull Clean URLs

bull feeds for everything (feed table handout)

bull One-click upgrades

bull widgets and menus

bull Free in the repository 16k plugins amp 1400 themes

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 12: The WordPress University

Weaknessesbull Lacks native reusable content amp network-

wide internal linking system

bull Requires caching plugin not included to optimize speed

bull Critical plugins can fail as WP advances

bull Disjointed and incomplete advanced documentation

bull Heavy use of pages can be problematic

bull Lacks robust native workflow

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 13: The WordPress University

Multisite and Child Themes

bull Setup options

bull sitedomainedu

bull domainedusite

bull Theme Frameworks

bull Genesis

bull Thematic

bull Headway

bull Whiteboard

bull Starkers

bull More - httpgoogl0B5yX

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 14: The WordPress University

Compared to other CMSs

bull Fast development cycles

bull WP 30 to 31 8 months

bull Drupal 60 to 70 3 years

bull Joomla 15 to 16 3 years

bull Cohesive disciplined core developer group

bull UI focused on ease of use

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 15: The WordPress University

Compared to other CMSs

bull Core features work very well

bull Comments

bull RSS and Atom feeds

bull Permalinks

bull Nonessential features relegated to plugins

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 16: The WordPress University

Making the Case for WordPress

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 17: The WordPress University

LAMP vs IIS 7bull mod_rewrite

bull htaccess

bull URL Rewrite 11

bull PHP running as FastCGI

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 18: The WordPress University

Open Source vs Commercial

Open Source

Low or no initial budget outlay

Premium support options available

Variety of custom development options--------------------------------Shelley launched in 2009 with $2k

Commercial

High startup costs

Enterprise support contracts available

Often contracted to the CMS company for customization

-------------------------------Texas 2yr launching OmniUpdate this year $52k+

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 19: The WordPress University

WordPress Tour

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 20: The WordPress University

5 Minute Installation

Unless your campus infrastructure sucks

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 21: The WordPress University

Basic Installationbull Gather database information name

username password

bull Unzip files to server

bull View in browser

bull Fill in values

bull Pass Go collect $200

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 22: The WordPress University

Network Setupbull Decide subdirectories or subdomains

bull Wildcard DNS is not required if you are not letting people sign up for new sites on their own

bull Users already in the system can be added to the new site

bull httpcodexwordpressorgCreate_A_Network

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 23: The WordPress University

Domain Mappingbull snoopywordpresscom -gt

snoopycorpcom

bull snoopywebserver-1schooledu -gt snoopyschooledu

bull WordPress MU Domain Mapping

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 24: The WordPress University

Migrating Single Sites to Networksbull Import from single WP install or other

supported CMS

bull Import from RSS

bull HTML Import

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 25: The WordPress University

Troubleshootingbull define(WP_DEBUG true)

bull Debug Bar plugin

bull View hooks

bull See Nacin on debugging WordPress

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 26: The WordPress University

Themes

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 27: The WordPress University

Basic Theme Setupbull stylescss and indexphp

bull More specific files for each archive type

bull Single post page or custom post type

bull Category and tag archives custom taxonomies

bull Date-based archives (day month year)

bull functionsphp turns on feature support works like mini-plugin

bull headerphp footerphp sidebarphp -- basic includes

bull commentsphp

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 28: The WordPress University

How this comes together

bull You click a category link on a post

bull Based on your permalink structure WordPress knows you are requesting a list of posts in that category It queries the database

bull It finds 53 posts Your Reading setting says 20 per page

bull WordPress assembles the first 20 posts data plus links to two more pages

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 29: The WordPress University

Which templatebull Which theme file is used

bull category-slugphp

bull category-idphp

bull categoryphp

bull archivephp

bull indexphp

bull See Show Template plugin

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 30: The WordPress University

More Advanced ThemesPage templates

Multiple sidebars

Widget areas

Using get_template_part() and specialized loop files

Theme options

Editor styles

Tips

handling subcategories without tons of files

conditional sidebars

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 31: The WordPress University

Child Themes Theme Name UWC 2011 Description Child theme for the Writing Center Version 10 Author Stephanie Leary Author URI httpuwctamuedu Template US2011 import url(US2011stylecss) Overrides

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 32: The WordPress University

Other Child Theme Files

bull If template is present in child theme use instead of parent file

bull BOTH functionsphp files will be used

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 33: The WordPress University

Theme Frameworks

bull A complete theme with many optionsbull Page templatesbull Specific archivesbull Many widget areasbull SEO features

bull custom fields for keywordsbull title filtersbull Genesis Google snippet preview

bull Can be overridden by child themes

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 34: The WordPress University

Building a Theme1Craft your HTML structure2Drop in WordPress template tags

bull the_title()bull the_content()bull etc

3Move common elements into include templatesbull Headerbull Footerbull Sidebarsbull Search form

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 35: The WordPress University

Building a Theme4Create widget areas5Handle comments and comment

forms6Dont forget 404php

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 36: The WordPress University

Creating Your Own Widgets

bull WP_Widget classbull constructor

bull specify widget title amp make it go bull widget

bull generate output bull update

bull handle form input save options bull form

bull display form fields

bull See wp-includesdefault-widgetsphp for examples

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 37: The WordPress University

Theme QampA

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 38: The WordPress University

Break

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 39: The WordPress University

Performance and Security

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 40: The WordPress University

Backing Upbull WP DB Backup (single sites database

only)

bull Backup Buddy (network database and files $$)

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 41: The WordPress University

Upgradingbull Do it (But back up first)

bull If the FTP Settings screen appears add to wp-configphp

bull Force direct upgradeinstall without making Apache the ownerdefine( FS_METHOD direct )define( FS_CHMOD_DIR 0775 )define( FS_CHMOD_FILE 0664 )

bull (Assuming you and Apache are in the same group)

bull Upgrading via SSH

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 42: The WordPress University

Permalink Settingsbull For best performance use the built-in

options

bull Verbose rules to be fixed in 33 (Thanksgiving-ish)

bull categorypostname

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 43: The WordPress University

Cachingbull WP Super Cache

bull W3 Total Cache

bull Hyper Cache

bull Batcache

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 44: The WordPress University

Security Precautions

bull Make sure WP files are group-writeable not world

bull Set permalinks and caching then make htaccess not writeable

bull No admin user

bull Change database table prefix from wp_

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 45: The WordPress University

Security Precautions

bull Move wp-configphp up one directory

bull Prevent bogus login attempts with Login Lockdown

bull Run WP Security Scan and Exploit Scanner

bull Monitor filesystem with File Monitor Plus

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 46: The WordPress University

Security Pluginsbull Login Lockdown or Limit Login

Attempts

bull Force SSL

bull WordPress Firewall

bull WP Security Scan

bull Exploit Scanner

bull File Monitor Plus

bull Audit Trail

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 47: The WordPress University

Evaluating Themes and Plugins

bull Search code for

bull base64()

bull eval()

bull include(wp-configphp)

bull Does it use updated libraries

bull Are wp_head() and wp_footer()

missing

bull Does it insert links you canrsquot remove

bull Does it pester you for commercial upgrades

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 48: The WordPress University

Writing Secure Themes and

Pluginsbull Use the Settings API

bull Check user capabilities

bull Check nonces and referrers

bull Validate user input

bull Escape output

bull Mark Jaquith on WP security

bull Professional WordPress Plugin Development

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 49: The WordPress University

More With WordPress

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 50: The WordPress University

BuddyPressSocial Network Layer

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 51: The WordPress University

BuddyPressbull Good Uses

bull Campus wide social network

bull Company-wide internal communication tool

bull Niche social network for interest topic

bull Benefits

bull Own the content

bull Long-term relationship maintenance

bull Timely integration and removal of popular third-party social networks

bull Absolute style control

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 52: The WordPress University

BuddyPress Plugins

bull Welcome Pack

bull Achievements

bull BuddyPress Share It

bull Group Suggest Widget

bull Simple Google Map Plugin

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 53: The WordPress University

CollabPressTask Management for WordPress

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 54: The WordPress University

CollabPress

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 55: The WordPress University

eCommerce Plugins

$$

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 56: The WordPress University

ScholarPressA Learning Management System for

BuddyPress

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 57: The WordPress University

Content AuditNow wersquore talking real CMS capability

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 58: The WordPress University

Custom Fields Taxonomies and

Post Types

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 59: The WordPress University

Custom Fieldsbull Adding more information to posts

bull Default input vs custom meta boxes

bull Examples content audit notes professor contact info

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 60: The WordPress University

Taxonomiesbull Extra sets of categories and tags

bull People

bull Movie DB

bull Taxonomy Tools

bull Scribus Query Multiple Taxonomies widget

bull Otto on complex taxonomy queries

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 61: The WordPress University

Custom Post Types amp Taxonomies

bull Default post types

bull Posts Pages

bull Attachments

bull Revisions

bull Menu Items

bull Potential uses

bull Course descriptions

bull Media database

bull Seminar series

bull Employee Directory

bull Default Taxonomies

bull Categories

bull Post Tags

bull Menus

bull Link Categories

bull Potential Uses

bull Video

bull People

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 62: The WordPress University

Post Typesbull Things that are not posts OR pages

bull products

bull books

bull courses

bull Anything that needs to be cataloged and displayed separately

bull Course Post Type sample plugin code

bull Custom fields professor name email phone course code

bull Taxonomies college department

bull Create your own register_post_type()

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 63: The WordPress University

Custom Post Type Resources

bull Custom Post Types in WordPress

bull Custom Post Types in WordPress 30

bull Custom Post Types and Custom Taxonomies

bull Introducing WordPress 3 Custom Taxonomies

bull Custom Post Types and Taxonomies in WordPress

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 64: The WordPress University

The WordPress Community

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 65: The WordPress University

Development Philosophy

bull 29 30 31 32 33 are all major releases

bull 321 is a bugfix and security update

bull Old releases do not get security updates

bull Core developers set feature agenda for major releases based on Trac tickets known problems and user surveys

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 66: The WordPress University

Development Philosophy

bull Development schedule kept on wpdevelwordpresscom

bull Meetings once a week in wordpress-dev

bull If it can be covered by a plugin let it Core is for features most people need or frameworks developers can build on

bull If you want it fixed sooner patch it yourself

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 67: The WordPress University

Documentationbull Codex

bull Forum

bull WP StackExchange

bull Trac

bull Developersrsquo blogs

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 68: The WordPress University

Supportbull Contract available from Automattic (core

creators)

bull Third party vendors such as MUSupportnet

bull Active user forums on wwwwordpressorg wpbeginner provides some paid support options

bull Individual plugin amp theme developers

bull Groups on LinkedIn huge Twitter population

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 69: The WordPress University

DiscussionIRC channels

bull wordpress

bull wordpress-dev

bull buddypress

bull bbpress

Listserves

bull WP-Hackers

bull WP-Edu

wp-eduorg

Development blogs

bull wpdevel

bull makeui

bull makethemes

bull makeaccessibility

bull wppolyglots

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 70: The WordPress University

News EventsWordCamps

bull San Francisco

bull New York

bull local centralwordcamporg

bull WP Candy

bull Planet WordPress

bull wpMailme

bull wpBeginner

bull wpTuts

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 71: The WordPress University

QampA

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos
Page 72: The WordPress University

Demosbull Network administrationbull Plugins

bull BPbull Collab bull Scholarbull Edit Flow andor Editorial Calendarbull Content Auditbull HTML Import if theres interest

  • The WordPress University
  • New book coming Fall 2014
  • Who we are
  • We made this
  • Why WordPress
  • Why WordPress Shelley 2005
  • Why WordPress Stephanie 2008
  • Why WordPress Stephanie 2008 (2)
  • The Drupal Detour (a 17-month mistake)
  • The Drupal Detour (a 17-month mistake) (2)
  • Advantages
  • Weaknesses
  • Multisite and Child Themes
  • Compared to other CMSs
  • Compared to other CMSs (2)
  • Making the Case for WordPress
  • LAMP vs IIS 7
  • Open Source vs Commercial
  • WordPress Tour
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Slide 28
  • Slide 29
  • 5 Minute Installation
  • Basic Installation
  • Network Setup
  • Slide 33
  • Domain Mapping
  • Migrating Single Sites to Networks
  • Troubleshooting
  • Themes
  • Basic Theme Setup
  • How this comes together
  • Which template
  • More Advanced Themes
  • Child Themes
  • Other Child Theme Files
  • Theme Frameworks
  • Slide 45
  • Slide 46
  • Building a Theme
  • Building a Theme (2)
  • Creating Your Own Widgets
  • Theme QampA
  • Break
  • Performance and Security
  • Backing Up
  • Upgrading
  • Permalink Settings
  • Caching
  • Slide 57
  • Slide 58
  • Security Precautions
  • Security Precautions (2)
  • Security Plugins
  • Evaluating Themes and Plugins
  • Writing Secure Themes and Plugins
  • More With WordPress
  • BuddyPress
  • BuddyPress (2)
  • Slide 67
  • Slide 68
  • BuddyPress Plugins
  • CollabPress
  • CollabPress (2)
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • eCommerce Plugins
  • ScholarPress
  • Content Audit
  • Slide 79
  • Slide 80
  • Slide 81
  • Slide 82
  • Slide 83
  • Slide 84
  • Custom Fields Taxonomies and Post Types
  • Custom Fields
  • Slide 87
  • Slide 88
  • Taxonomies
  • Slide 90
  • Slide 91
  • Custom Post Types amp Taxonomies
  • Post Types
  • Slide 94
  • Slide 95
  • Custom Post Type Resources
  • The WordPress Community
  • Development Philosophy
  • Development Philosophy (2)
  • Documentation
  • Support
  • Discussion
  • News Events
  • QampA
  • Demos