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
Making shortcodes a piece of cake
Search
Matthew Haines-Young
March 10, 2015
Programming
0
24k
Making shortcodes a piece of cake
How we manage complex page elements
in WordPress with Shortcake on Fusion.net
Matthew Haines-Young
March 10, 2015
Tweet
Share
More Decks by Matthew Haines-Young
See All by Matthew Haines-Young
Building Sites with Gutenberg
mattheu
1
200
WordPress REST API - Writing Custom Endpoints
mattheu
0
77
Intro to I18N in code
mattheu
0
73
Tips for writing secure code in WordPress
mattheu
1
110
Other Decks in Programming
See All in Programming
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
1
110
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
290
使ってみよう Azure AI Document Intelligence
kosmosebi
2
320
Elm Form Validation
bkuhlmann
0
510
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
840
Ruby Pattern Matching
bkuhlmann
0
930
GitHub Copilotのススメ
marcy731
1
200
Code Reviews
bkuhlmann
4
890
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
8
4.1k
What We Can Learn From OSS
inouehi
0
420
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.3k
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
950
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
92
4.8k
Into the Great Unknown - MozCon
thekraken
10
990
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
40
4.4k
YesSQL, Process and Tooling at Scale
rocio
164
13k
Building Applications with DynamoDB
mza
88
5.6k
Atom: Resistance is Futile
akmur
259
25k
A Philosophy of Restraint
colly
197
16k
Design by the Numbers
sachag
274
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
116
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Thoughts on Productivity
jonyablonski
58
3.8k
Transcript
MAKING SHORTCODES A PIECE OF CAKE Manage complex page elements
in WordPress with Shortcake https://github.com/fusioneng/Shortcake
None
• US-based, multi-platform media company • Expanding their web presence
• Migrated Fusion.net to WordPress (end 2014) • Launched a big redesign (early 2015) • Want to publish great content on the web
AUTHORS NEED TO BUILD INTERESTING PAGES THEMSELVES ON A DAILY
BASIS
EXAMPLE: BLOCKQUOTE
GOALS • Simple and easy to use tool • No
code • WYSIWYG • Flexible, reusable modules • Simple for developers to add new modules • Make use of existing tools
None
None
None
None
None
None
HOW DO WE DO IT?
• Available in WordPress since 2.5 • WordPress uses them
for galleries, audio and video • Simple code: [name attr="value"] • Converted to HTML when output SHORTCODES
BUT EVERYBODY HATES SHORTCODES!
• Terrible user experience • Users still have to write
code • No discoverability • Poor documentation • Often don’t have previews WHY ARE SHORTCODES BAD?
SHORTCODE PREVIEWS • It is possible to get previews in
the editor • Easier now than it once was • MCE Views • Simple JavaScript API to register a preview for a shortcode
SHORTCAKE = SHORTCODES + MCE VIEWS + INTERFACE
• Mostly JavaScript - Backbone.js • Modules - Grunt +
Browserify • Jasmine for unit testing (Grunt, TravisCI) • PHP to generate preview - output exactly as on the front end TECHNICAL INFO
EXAMPLES FROM FUSION.NET
GALLERY
IMAGE COMPARISON
EMBEDDED PDF
• Interactives. JS apps & games • Liveblogs (WordPress VIP
Liveblogs) • Social Streams. Curated grid of content from Twitter, Instagram etc • Embedding third party content. (Quiz from Playbuzz) OTHER EXAMPLES
SHORTCAKE MAKES USING SHORTCODES A PIECE OF CAKE!
BUT ITS NOT REALLY ABOUT SHORTCODES
IF A USER EVER SEES A SHORTCODE, THEN
WE’VE FAILED
SHORTCAKE MAKES IT EASY TO ADD COMPLEX BLOCKS OF CONTENT