Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Stackbox CMS: Next Generation Content Management
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
vlucas
March 02, 2012
Technology
490
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Stackbox CMS: Next Generation Content Management
vlucas
March 02, 2012
More Decks by vlucas
See All by vlucas
How To Build Community
vlucas
1
320
You Don't Know Node.js
vlucas
2
410
How To Evaluate Your App Idea
vlucas
1
240
Bullet: The Functional PHP Micro-Framework
vlucas
0
140
Frisby.js: BDD For Your REST API
vlucas
6
4.1k
Hypermedia APIs & Self-Building Apps
vlucas
3
700
Alloy HMVC PHP Framework
vlucas
3
500
Hierarchical MVC: What, Why & How
vlucas
6
1.4k
Other Decks in Technology
See All in Technology
When Platform Engineering Meets GenAI
sucitw
0
170
AWS Security Agent といっしょに脅威モデリングをやってみよう
amarelo_n24
1
210
事業会社における 機械学習・推薦システム技術の活用事例と必要な能力 / ml-recsys-in-layerx-wantedly-2026
yuya4
0
160
AIのReact習熟度を測る
uhyo
2
680
AWS Security Hub CSPMの成功・失敗体験
cmusudakeisuke
0
550
PostgreSQL 19 新機能概要 OSC Hokkaido 2026
nori_shinoda
0
240
作る力から、見極める力へ — AI時代に広がるエンジニアの価値と役割
rince
0
330
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
190
「軸足」は 固定しなくていい - 熱量と強みで描く、しなやかなキャリアの形
kakehashi
PRO
1
260
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
860
新しいUbuntu/GNOMEが使いたいからXからWaylandへ移行頑張ってるの巻 2026-06-20
nobutomurata
0
160
ロボティクスの技術 / Robotics Technology
ks91
PRO
0
130
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Code Review Best Practice
trishagee
74
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Design in an AI World
tapps
1
250
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Designing for humans not robots
tammielis
254
26k
A Tale of Four Properties
chriscoyier
163
24k
The Language of Interfaces
destraynor
162
27k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
240
WCS-LA-2024
lcolladotor
0
650
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Transcript
Vance Lucas php|tek - May 26, 2011 stackbox CMS (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 Text KWWSZZZH[DPSOHFRP ,QVLGH3DJH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ 6LJQXS ,WHP
,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH +HDGLQJ /RUHPLSVXPGRORUVLWDPHWFRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRUYLYHUUD 3KDVHOOXVFRQJXHWHPSRUMXVWRVHGFXUVXV4XLVTXHQRQTXDP WXUSLV&XUDELWXUPROOLVOXFWXVWHPSRU$OLTXDPVLWDPHWQLVOYHO DUFXUXWUXPRUQDUHDWYHOVHP8WFRQVHTXDWVFHOHULVTXH DGLSLVFLQJ 3UDHVHQWSUHWLXPOLEHURQHFOHFWXVHOHPHQWXPLQWHUGXP8WDW RGLRORUHP6HGSRVXHUHWHPSXVOLEHURLQFXUVXVPLDFFXPVDQ LG1XOODIDFLOLVL0DHFHQDVYDULXVOHRLGODFXVSUHWLXPDOLTXHW 3HOOHQWHVTXHDFHUDWHOLW Â%XOOHW Â%XOOHW Â%XOOHW +HDGLQJ Simple Content Page Monday, May 30, 2011
Content for this page KWWSZZZH[DPSOHFRP ,QVLGH3DJH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ
6LJQXS ,WHP ,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH +HDGLQJ /RUHPLSVXPGRORUVLWDPHWFRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRUYLYHUUD 3KDVHOOXVFRQJXHWHPSRUMXVWRVHGFXUVXV4XLVTXHQRQTXDP WXUSLV&XUDELWXUPROOLVOXFWXVWHPSRU$OLTXDPVLWDPHWQLVOYHO DUFXUXWUXPRUQDUHDWYHOVHP8WFRQVHTXDWVFHOHULVTXH DGLSLVFLQJ 3UDHVHQWSUHWLXPOLEHURQHFOHFWXVHOHPHQWXPLQWHUGXP8WDW RGLRORUHP6HGSRVXHUHWHPSXVOLEHURLQFXUVXVPLDFFXPVDQ LG1XOODIDFLOLVL0DHFHQDVYDULXVOHRLGODFXVSUHWLXPDOLTXHW 3HOOHQWHVTXHDFHUDWHOLW Â%XOOHW Â%XOOHW Â%XOOHW +HDGLQJ Monday, May 30, 2011
Common Elements • URL • Title • Body • Parent
/ Hierarchy • Section / Category / Tags • Metadata • Template Monday, May 30, 2011
Wordpress 3.1 Monday, May 30, 2011
Title Text Drupal 7 Monday, May 30, 2011
Anything Missing? Monday, May 30, 2011
Title Text KWWSZZZH[DPSOHFRP ,QVLGH3DJH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ 6LJQXS ,WHP
,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH +HDGLQJ /RUHPLSVXPGRORUVLWDPHWFRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRUYLYHUUD 3KDVHOOXVFRQJXHWHPSRUMXVWRVHGFXUVXV4XLVTXHQRQTXDP WXUSLV&XUDELWXUPROOLVOXFWXVWHPSRU$OLTXDPVLWDPHWQLVOYHO DUFXUXWUXPRUQDUHDWYHOVHP8WFRQVHTXDWVFHOHULVTXH DGLSLVFLQJ 3UDHVHQWSUHWLXPOLEHURQHFOHFWXVHOHPHQWXPLQWHUGXP8WDW RGLRORUHP6HGSRVXHUHWHPSXVOLEHURLQFXUVXVPLDFFXPVDQ LG1XOODIDFLOLVL0DHFHQDVYDULXVOHRLGODFXVSUHWLXPDOLTXHW 3HOOHQWHVTXHDFHUDWHOLW Â%XOOHW Â%XOOHW Â%XOOHW +HDGLQJ Content for all pages Monday, 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 Page KWWSZZZH[DPSOHFRP +RPHSDJH+XOXVW\OH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ 6LJQXS ,WHP
,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD $FWLRQ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD +HDGHU +HDGHU +HDGHU &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH Monday, May 30, 2011
Content for this page KWWSZZZH[DPSOHFRP +RPHSDJH+XOXVW\OH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ
6LJQXS ,WHP ,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD $FWLRQ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD +HDGHU +HDGHU +HDGHU &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH Monday, 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 page KWWSZZZH[DPSOHFRP +RPHSDJH+XOXVW\OH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ
6LJQXS ,WHP ,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD $FWLRQ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD +HDGHU +HDGHU +HDGHU &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH Monday, 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 Text KWWSZZZH[DPSOHFRP ,QVLGH3DJH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ 6LJQXS ,WHP
,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH +HDGLQJ /RUHPLSVXPGRORUVLWDPHWFRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRUYLYHUUD 3KDVHOOXVFRQJXHWHPSRUMXVWRVHGFXUVXV4XLVTXHQRQTXDP WXUSLV&XUDELWXUPROOLVOXFWXVWHPSRU$OLTXDPVLWDPHWQLVOYHO DUFXUXWUXPRUQDUHDWYHOVHP8WFRQVHTXDWVFHOHULVTXH DGLSLVFLQJ 3UDHVHQWSUHWLXPOLEHURQHFOHFWXVHOHPHQWXPLQWHUGXP8WDW RGLRORUHP6HGSRVXHUHWHPSXVOLEHURLQFXUVXVPLDFFXPVDQ LG1XOODIDFLOLVL0DHFHQDVYDULXVOHRLGODFXVSUHWLXPDOLTXHW 3HOOHQWHVTXHDFHUDWHOLW Â%XOOHW Â%XOOHW Â%XOOHW +HDGLQJ Content for all pages Monday, 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 content KWWSZZZH[DPSOHFRP +RPHSDJH+XOXVW\OH )RUPRUHLQIRFRPPHQWVDQGVXJJHVWLRQVJRWRPRUWHQMXVWFRPDZLUHIUDPHNLWIRUJRRJOHGUDZLQJV 6HFWLRQ 6HFWLRQ /RJLQ
6LJQXS ,WHP ,WHP ,WHP ,WHP ,WHP ,WHP +HDGLQJ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW&UDV LPSHUGLHWHQLPDFDXJXHDXFWRU YLYHUUD $FWLRQ /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD /RUHPLSVXPGRORUVLWDPHW FRQVHFWHWXUDGLSLVFLQJHOLW &UDVLPSHUGLHWHQLPDF DXJXHDXFWRUYLYHUUD +HDGHU +HDGHU +HDGHU &RS\ULJKW0\3URMHFW QSXWRN" <HV 1R SOD\HUURU WLFN\QRWH Monday, 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
[email protected]
http://brightb.it (405) 595-0101 Oklahoma City stackbox CMS http://stackboxcms.com Monday,
May 30, 2011