66
Megg Brown, Assistant Director of Web Development, Vassar College, Poughkeepsie, NY 2012 Cascade User Conference Lessons Learned Site Best Practices, Content Repurposing, and Custom Reporting at Vassar

CMS Lessons Learned at Vassar by Megg Brown

Embed Size (px)

DESCRIPTION

At Vassar College, they use Cascade Server as a repository for over 120 unique sites. Each has a core structure called "Sample Site," a starting point for new responsive designs and a foundation for upgrading older sites to HTML5. Since 2009, they have used database publishing for news, schedules, and bios. With their catalogue and other publications that they publish plain HTML to include in sites with PHP–utilizing single sources of content. Vassar College developed its own reports in Cascade to watch trends, active/inactive users, new/dated pages, and to share information with colleagues. Megg will share how Vassar College has sites set up in Cascade, their methods to repurpose content with database publishing and include files, and how they developed a reporting tool with database publishing and dynamic charts. Hear Vassar's lessons learned so you can benefit from what they have explored.

Citation preview

Page 1: CMS Lessons Learned at Vassar by Megg Brown

Megg Brown, Assistant Director of Web Development, Vassar College, Poughkeepsie, NY

2012 Cascade User Conference

Lessons LearnedSite Best Practices, Content Repurposing, and Custom Reporting at Vassar

Page 2: CMS Lessons Learned at Vassar by Megg Brown

Outline

Introduction Quick facts about Vassar and

how we’re structured

Sample Site The site we copy in Cascade

Content Repurposing Include files Database publishing Site variables

Reporting Email Charts

Page 3: CMS Lessons Learned at Vassar by Megg Brown

About Vassar College

Vassar College is a highly selective, coeducational, independent, residential liberal arts college founded in 1861

Located in Poughkeepsie, New York80 miles north of New York City

2,400 students 290 faculty

Page 4: CMS Lessons Learned at Vassar by Megg Brown

Web Development custom designs each site Located in

Communications 7 FTE

Director Assistant Director Web Designers (4) Web Developer

Each design is unique Over 100 official websites

maintained with Cascade

Page 5: CMS Lessons Learned at Vassar by Megg Brown

Web Maintenance

Page 6: CMS Lessons Learned at Vassar by Megg Brown

Cascade as content repository Our approach has been to treat Cascade as our content

repository

We publish what you need, where we need it Database publish was huge for us

We get to decide what it looks like, including under the hood We developed the HTML we want in our sites We set up include files so we don’t have to publish too much when we have

changes

We prefer a “Push CMS” It works for us If something happens to the CMS server it won’t take down the published

sites We can restrict the CMS server to campus

Page 7: CMS Lessons Learned at Vassar by Megg Brown

Have a “Sample Site” in Cascade

A site ready to copy to create a new site Saves you from starting from

scratch Designer builds HTML/CSS

outside the CMS Set up site in Cascade with

content before design is ready

Merge the two to produce the launchable site

Page 8: CMS Lessons Learned at Vassar by Megg Brown

More about our projects on our blog

webdesign.vassar.edu

Page 9: CMS Lessons Learned at Vassar by Megg Brown

Structure of “Sample Site”

4 sites work together to make a launchable site

Assets outside Cascade Shared across sites

Secure domain for hosting published files displayed inside Cascade (CSS, images)

Site-specific assets

Assets used inside Cascade Shared across sites

If we had to do it over againWe would have two sites:

1) shared assets, published to secure site2) the site-specific assets

A note about site exportsHave your site as self-contained as

possibleif you plan to share examples.

To import a site connected to assets in multiple sites, the other sites and assets need to exist. So if we share an example we would need to provide an export of

each site used.

Page 10: CMS Lessons Learned at Vassar by Megg Brown
Page 11: CMS Lessons Learned at Vassar by Megg Brown

Templates have a consistent structure As little HTML as possible html5 Regions in sets of 3

DEFAULT-PRE DEFAULT DEFAULT-POST

Region assignments: Site-wide in Template Section-wide in Configuration

(created as needed) Page-specific in Page

PHP for site name, hide display name on homepage

Page 12: CMS Lessons Learned at Vassar by Megg Brown

Templates have a consistent structure As little HTML as possible html5 Regions in sets of 3

DEFAULT-PRE DEFAULT DEFAULT-POST

Region assignments: Site-wide in Template Section-wide in Configuration

(created as needed) Page-specific in Page

PHP for site name, hide display name on homepage

Page 13: CMS Lessons Learned at Vassar by Megg Brown

Templates have a consistent structure As little HTML as possible html5 Regions in sets of 3

DEFAULT-PRE DEFAULT DEFAULT-POST

Region assignments: Site-wide in Template Section-wide in Configuration

(created as needed) Page-specific in Page

PHP for site name, hide display name on homepage

Page 14: CMS Lessons Learned at Vassar by Megg Brown

Templates have a consistent structure As little HTML as possible html5 Regions in sets of 3

DEFAULT-PRE DEFAULT DEFAULT-POST

Region assignments: Site-wide in Template Section-wide in Configuration

(created as needed) Page-specific in Page

PHP for site name, hide display name on homepage

<!--#START-CODE<title>#END-CODE--><system-page-title/><!--#START-CODE - <?php echo $_SERVER['V_CONTENT_SITENAME']; ?> - Vassar College</title>#END-CODE-->

<!--#START-CODE<title>#END-CODE--><system-page-title/><!--#START-CODE - <?php echo $_SERVER['V_CONTENT_SITENAME']; ?> - Vassar College</title>#END-CODE-->

<!--#START-CODE <?php if($_SERVER['PHP_SELF']!=$_SERVER['V_FOLDER_PATH'].'/index.html'){ ?>#END-CODE--><h2 class="pagetitle"><system-page-display-name/></h2><!--#START-CODE<?php } ?>#END-CODE-->

<!--#START-CODE <?php if($_SERVER['PHP_SELF']!=$_SERVER['V_FOLDER_PATH'].'/index.html'){ ?>#END-CODE--><h2 class="pagetitle"><system-page-display-name/></h2><!--#START-CODE<?php } ?>#END-CODE-->

Page 15: CMS Lessons Learned at Vassar by Megg Brown
Page 16: CMS Lessons Learned at Vassar by Megg Brown
Page 17: CMS Lessons Learned at Vassar by Megg Brown
Page 18: CMS Lessons Learned at Vassar by Megg Brown
Page 19: CMS Lessons Learned at Vassar by Megg Brown
Page 20: CMS Lessons Learned at Vassar by Megg Brown

Next we’ll jump over to the Administration area

Page 21: CMS Lessons Learned at Vassar by Megg Brown

Administration Area of Sample Site What we don’t use:

Workflow We prefer workflow to take place

outside the CMS. Publish Sets

When testing upgrades of Cascade we need to remember to disable them.

Connectors We have not yet explored

Connectors.

Page 22: CMS Lessons Learned at Vassar by Megg Brown

Configuration Sets

We try to have as few as possible, but we do have sites with a set per section

Now being used on all new/upgraded sites

Data DefinitionsUsed in some websites, all announcements, all bios

Content Types

Metadata SetsAll sites set with Display Name and Title inlineWe try to use Custom Metadata over Data Definitions.

Page 23: CMS Lessons Learned at Vassar by Megg Brown

Destinations and Transports

Each site is set up to publish Announcements to MySQL MySQL database for

reporting Database named CMS

Audit “Leave this checked”

Live website Test website

When we set up a new site we add groups to the Destinations -- common step we missed

For Transports, all sites are assigned a unique Site ID from a table we maintain in MySQL

Page 24: CMS Lessons Learned at Vassar by Megg Brown
Page 25: CMS Lessons Learned at Vassar by Megg Brown
Page 26: CMS Lessons Learned at Vassar by Megg Brown
Page 27: CMS Lessons Learned at Vassar by Megg Brown
Page 28: CMS Lessons Learned at Vassar by Megg Brown
Page 29: CMS Lessons Learned at Vassar by Megg Brown
Page 30: CMS Lessons Learned at Vassar by Megg Brown

.htaccess and .htaccess-staging

Two files one for live website, publishes

to subdomain: samplesite.vassar.edu

one for test version, publishes to subfolder: test.vassar.edu/samplesite/w

eb

Rewrite rules to match URL for Cascade “Live” link

Contains Server Variables Paths and Settings Content

Page 31: CMS Lessons Learned at Vassar by Megg Brown

.htaccess and .htaccess-staging Contains Server Variables

Paths and Settings Site ID Subfolder path (staging version) Include path

Content Site name Box number Office location Office URL (deep link in campus

map for office location) Office phone Office fax Office contact email Contact information used by the

announcements system

Page 32: CMS Lessons Learned at Vassar by Megg Brown
Page 33: CMS Lessons Learned at Vassar by Megg Brown

index and template

index Assigned to the standard

template Copied to make new pages Once the site is filled in with

content we determine if the homepage warrants its own template

Page 34: CMS Lessons Learned at Vassar by Megg Brown

index and template

template A sample page with examples

of all the HTML we need the CSS to accommodate Does not get removed Does not get indexed, but is

published Used when we need to

tweak and test the CSS

Page 35: CMS Lessons Learned at Vassar by Megg Brown

index and template

template A sample page with examples

of all the HTML we need the CSS to accommodate Does not get removed Does not get indexed, but is

published Used when we need to

tweak and test the CSS

Page 36: CMS Lessons Learned at Vassar by Megg Brown
Page 37: CMS Lessons Learned at Vassar by Megg Brown
Page 38: CMS Lessons Learned at Vassar by Megg Brown
Page 39: CMS Lessons Learned at Vassar by Megg Brown

site-xml.xmlPublishes XML of the site,

similar to the index block for use with a PHP scriptthat parses the XML into the site navigation

Page 40: CMS Lessons Learned at Vassar by Megg Brown
Page 41: CMS Lessons Learned at Vassar by Megg Brown
Page 42: CMS Lessons Learned at Vassar by Megg Brown
Page 43: CMS Lessons Learned at Vassar by Megg Brown
Page 44: CMS Lessons Learned at Vassar by Megg Brown

Users see the assets folder, but can only publish nav; the rest is hidden

They can add files to the “docs” folder They also don’t see the .htaccess files or the template page

Page 45: CMS Lessons Learned at Vassar by Megg Brown

Content Repurposing Include files

College Catalogue Student Handbook College Regulations

Benefit When changes are made the

updates appear on each site; no need to copy-and-paste updates across multiple sites

Accuracy: pages remain up-to-date, refreshed with each new edition of the source publication

Page 46: CMS Lessons Learned at Vassar by Megg Brown

Catalogue content included in each academic site Catalogue content updated

in by the Registrar Courses updated in Banner All other content in Cascade

How it works A line of PHP is all we need to

include each section in another site

<?php@readfile(“

http://catalogue.v assar.edu/includes/departm entpages/BIOL.php

”);?>

Page 47: CMS Lessons Learned at Vassar by Megg Brown
Page 48: CMS Lessons Learned at Vassar by Megg Brown
Page 49: CMS Lessons Learned at Vassar by Megg Brown
Page 50: CMS Lessons Learned at Vassar by Megg Brown
Page 51: CMS Lessons Learned at Vassar by Megg Brown
Page 52: CMS Lessons Learned at Vassar by Megg Brown
Page 53: CMS Lessons Learned at Vassar by Megg Brown
Page 54: CMS Lessons Learned at Vassar by Megg Brown

Content Repurposing Database publishing

News Press releases published from

Communications fed to sites by keywords

Departments post their own announcements

Both rolled together to show headlines and news in site design

Bios Main content and custom

metadata published to MySQL from Cascade

Table of data from Banner Table of data to override names

and titles when needed

Page 55: CMS Lessons Learned at Vassar by Megg Brown

Multiple bios across sites Faculty each have a home

department They can also teach in multiple

programs

We can display the same bio on each site

Page 56: CMS Lessons Learned at Vassar by Megg Brown

Multiple bios across sites Faculty each have a home

department They can also teach in multiple

programs

We can display the same bio on each site

Page 57: CMS Lessons Learned at Vassar by Megg Brown

Reporting

Page 58: CMS Lessons Learned at Vassar by Megg Brown

Reporting

vcSiteIDs Stores the Site ID numbers Display name and Title URL Category, date launched

(designed), and designer are available to show history of a site

Page 59: CMS Lessons Learned at Vassar by Megg Brown

Reporting

archive Captures all the information

for that day, one record per asset

Includes content Does not include custom

metadata We may add a field with an

array of all custom metadata

Used for reporting over time

Page 60: CMS Lessons Learned at Vassar by Megg Brown

Daily Report

First report developed Emailed every morning Recap what was published

from the CMS the previous day Pages only Grouped by site Added icons to distinguish

between announcements and pages

Added search results from other sources

Page 61: CMS Lessons Learned at Vassar by Megg Brown
Page 62: CMS Lessons Learned at Vassar by Megg Brown
Page 63: CMS Lessons Learned at Vassar by Megg Brown

highcharts.com for dynamic charts

Page 64: CMS Lessons Learned at Vassar by Megg Brown

Vassar College Web Developmenthttp://webdesign.vassar.edu

@vassarwebdesign

Megg Brownhttp://about.me/meggbrown

@stomer

Page 65: CMS Lessons Learned at Vassar by Megg Brown
Page 66: CMS Lessons Learned at Vassar by Megg Brown

Vassar sites