Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Patrick Johanneson: Brandon University (Case Study)

November 03, 2012

Patrick Johanneson: Brandon University (Case Study)

A study of some of the challenges encountered, and solutions discovered, in moving the Brandon University websites from IIS/ASP to WordPress. Presented by Patrick Johanneson at WordCamp Toronto: Developers 2012.


November 03, 2012

More Decks by WPToronto

Other Decks in Technology


  1. Patrick Johanneson

    1st dynamic webpage: a
    Perl script to select a
    restaurant for lunch

    1st WordPress
    experience: moving my
    blog from Blogger to
    self-hosted WP

    B. Sc. 1994, Computer
    Science major

    Worked in IT at BU
    since Jan. 1994

    Involved with 1st web
    server at BU in

    View Slide

  2. The Big Move

    View Slide

  3. Wayback - 1997

    View Slide

  4. Wayback - 2000

    View Slide

  5. Wayback - 2001

    View Slide

  6. Wayback - 2007

    View Slide

  7. Today (well, last week)

    View Slide

  8. Faculty Homepage

    View Slide

  9. Department Homepage

    View Slide

  10. Some of the plugins we use

    Gravity Forms

    page fold list (forked because project was no
    longer updated)

    Quick Page/Post Redirect

    Role Scoper

    Tribe Events (on test)

    Email Address Encoder

    Post Expirator

    View Slide

  11. Navigation: Old vs new

    navigation evolved
    organically, as a result
    of internal pressures
    and HIPPOs

    Sample URL:

    Goal-based navigation
    developed with
    prospective students in

    Sample URL:

    View Slide

  12. Navigation
    Every site has a simple URL
    /science, /physics, /itservices, /helpdesk, /alumni
    Some sites have “parents”
    eg: /physics has /science as its parent site
    This is accomplished using the WP options table,
    and maintained with a custom plugin

    View Slide

  13. BU-Nav plugin – Site Parent

    PLUGINS/bu-nav/parent.php contains the code
    that sets the site parent; let's have a look at that

    View Slide

  14. Breadcrumbs

    Breadcrumbs are generated by PLUGINS/bu-

    View Slide

  15. Contact info

    Contact information is set site-by-site

    If a site doesn't have contact info set, then its
    parent's contact info is set

    If the parent[s] don't have any contact info, then
    the overall BU information is used

    If that isn't set, then a default is used

    This is handled by PLUGINS/bu-

    View Slide

  16. Homepages – News and Events

    News and Event listings on homepages are
    handled by
    events.php (which is include()d in functions.php)

    View Slide

  17. On the horizon

    Switch option code to use Options API
    (get_option(), set_option(), etc)

    Moving events to Tribe events system

    New Prospective Students site

    View Slide

  18. Questions?

    View Slide