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
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
360
You Don't Know Node.js
vlucas
2
420
How To Evaluate Your App Idea
vlucas
1
250
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
710
Alloy HMVC PHP Framework
vlucas
3
510
Hierarchical MVC: What, Why & How
vlucas
6
1.4k
Other Decks in Technology
See All in Technology
1.5時間を無駄にして学んだwsl2におけるaptとsnapの選択と仕組み
yosaka0123
0
460
Distributed Transactions Under Fire: Building a Zero-Oversell Flash Sale Platform with Amazon Aurora DSQL
yama3133
0
100
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
86k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.5k
最新技術に積極チャレンジ!EKS共通基盤のこれまでとこれから
daitak
0
250
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
640
AI駆動開発を組織で促すために
lycorptech_jp
PRO
7
8.7k
markdown-poster Introduction
kazamori
0
400
internal/testlog で遊ぼう
rokuosan
0
330
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
130
指示待ちから変化に応じるClaude Codeへ!~環境からAgentへの帰り道を作る~
gotalab555
8
1.5k
dbt と Snowflake と tag
kevinrobot34
2
290
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
220
Speed Design
sergeychernyshev
33
2k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
690
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
260
Being A Developer After 40
akosma
91
590k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
220
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
300
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
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