stackbox cms: next-generation content management

54
Vance Lucas php|tek - May 26, 2011 stackbox CMS (Formerly Cont-xt) Monday, May 30, 2011

Upload: vance-lucas

Post on 13-Apr-2017

4.927 views

Category:

Technology


0 download

TRANSCRIPT

Vance Lucas php|tek - May 26, 2011

stackboxCMS

(Formerly Cont-xt)

Monday, May 30, 2011

Why another CMS?

Monday, May 30, 2011

Because this one is different*

*Just like every other CMS on the market

Monday, May 30, 2011

What is a page?

Monday, May 30, 2011

Title TextSimple Content PageMonday, May 30, 2011

Content for this pageMonday, May 30, 2011

Common Elements

• URL

• Title

• Body

• Parent / Hierarchy

• Section / Category / Tags

• Metadata

• Template

Monday, May 30, 2011

Wordpress 3.1Monday, May 30, 2011

Title TextDrupal 7Monday, May 30, 2011

Anything Missing?

Monday, May 30, 2011

Title TextContent for all pagesMonday, May 30, 2011

Is it editable?How?

Monday, May 30, 2011

Yes and No.It depends.

Monday, May 30, 2011

Do Your End-Users Know...

Monday, May 30, 2011

Monday, May 30, 2011

Probably Not.Good luck telling them to edit templates.

Monday, May 30, 2011

But That’s Not The Only Problem...

Monday, May 30, 2011

Complex PageMonday, May 30, 2011

Content for this pageMonday, May 30, 2011

Which one is the main content area?

Monday, May 30, 2011

Which one is the main content area?Hint: None of them are.

Monday, May 30, 2011

The definition of a page these content management systems use is fundamentally flawed.

Monday, May 30, 2011

No CMS that uses this definition of a page agrees on the same

solution to this problem, or even the same terminology.

Monday, May 30, 2011

Solutions(?) for “other” content

• Widgets

• Blocks

• Modules

• Plugins

• Nodes

• Extensions

• Code Snippets

• Hard-coded in Templates

Monday, May 30, 2011

Users are forced to edit pieces of the same page in completely different areas of a complex admin system several pages

away from the content itself.

Monday, May 30, 2011

These methods are all workarounds to a flawed model

that doesn’t work for pages.

Monday, May 30, 2011

What about Stackbox?

Monday, May 30, 2011

Title Text

What is a page?

Monday, May 30, 2011

Title Text

What is a page?We need a new definition

Monday, May 30, 2011

A page is a container for content.

Monday, May 30, 2011

Common Elements

• URL

• Title

• Body

• Parent / Hierarchy

• Section / Category / Tags

• Metadata

• Template

Monday, May 30, 2011

Common Elements

• URL

• Title

• Parent / Hierarchy

• Metadata

• Template

Monday, May 30, 2011

The page template defines the content. It is impossible to know the content - amount, placement,

or type - ahead of time.

Monday, May 30, 2011

Content for this pageMonday, May 30, 2011

How do we define content areas?Designers will be working with templates.

Monday, May 30, 2011

Regions defined with CSS classes

<html><head>

<title>Homepage</title></head>

<body><div class=”cms_region” id=”slideshow”></div>

<div class=”cms_region” id=”intro_left”></div>

<div class=”cms_region” id=”intro_center”></div>

<div class=”cms_region” id=”intro_right”></div></body>

</html>

Monday, May 30, 2011

What about content on all pages?Headers, Footers, Sidebars, etc.

Monday, May 30, 2011

Title TextContent for all pagesMonday, May 30, 2011

We also need global regions

<html><head>

<title>Homepage</title></head>

<body><div class=”cms_region_global” id=”header”></div>

<div class=”cms_region” id=”content”></div>

<div class=”cms_region_global” id=”sidebar”></div>

<div class=”cms_region_global” id=”footer”></div></body>

</html>

Monday, May 30, 2011

Unobtrusive markup for regions

• Content regions defined with CSS classes

• cms_region

• Content for the current page

• cms_region_global

• Content shared across multiple pages

• Any global template region that shares the same ID

Monday, May 30, 2011

Different types of contentMonday, May 30, 2011

How do we handle completely different types of content?

Monday, May 30, 2011

Different types of content

• Text / HTML / WYSIWYG

• Site Navigation

• Blog / News

• Event Calendar

• Image/Video Slideshow

• Contact Form

• Product Listing

• etc...

Monday, May 30, 2011

Every piece of content is a module so nothing is pre-defined.

Monday, May 30, 2011

How do we make it easy for end-users?

Monday, May 30, 2011

Kill the admin panel. Put all edit controls on-page, overlaid on top of the content the user wants

to edit.

Monday, May 30, 2011

Modules are placed inside defined regions on-page with

user-friendly drag-and-drop and point-and-click methods.

Monday, May 30, 2011

How do we make developers love

modules?

Monday, May 30, 2011

Modules are self-contained MVC triads that define their own

behavior and structure.

Monday, May 30, 2011

This is made possible with Hierarchical MVC (HMVC).

Monday, May 30, 2011

One More Thing...

Monday, May 30, 2011

Stackbox is multi-site capable.

Monday, May 30, 2011

Demo Time!

Monday, May 30, 2011