• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Live Content: Finding new ways to publish
 

Live Content: Finding new ways to publish

on

  • 1,796 views

 

Statistics

Views

Total Views
1,796
Views on SlideShare
1,749
Embed Views
47

Actions

Likes
3
Downloads
10
Comments
0

2 Embeds 47

http://butspace.com 25
http://localhost 22

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Live Content: Finding new ways to publish Live Content: Finding new ways to publish Presentation Transcript

  • Live ContentFinding new ways to Publish By Christopher Imrie Lead Developer, Moresoda
  • Christopher ImrieLead Developer, Moresoda• Aerospace Engineer• Ex-freelancer• Adobe Certified Instructor• PHP, JS, MySQL• CodeIgniter, ExpressionEngine• Problem Solver
  • 3 Ideas • Live Content • Better ? Different? Flexible publish page Client side data Data services
  • Ideas & Techniques • New ideas lead to new techniques • My techniques != your techniques • Not gospel, just showing whats possible
  • The aim? Look at ExpressionEngine asdifferent kind of publishing platform
  • Live ContentFinding new ways to publishFlexible Publish Page
  • Publish Page
  • Publish Page • Easy to understand • Clients love it • Flexible • Extendible with Custom Fieldtypes • Could be better?
  • Publish Page Channel Fieldgroups Fieldtypes • Tedious? • Could be better? • Arcane?
  • What would be better? Channel Fieldtypes • Remove the fieldgroup concept? • Brandon Kelly proposed this (Aug 2010) • Problem persists...
  • The Problem Developer makes all the connections
  • Article / OpenDNS
  • Article / Next American City
  • WYSIWYG Editors • Designed as one size fits all • Bloat • HTML produced can be bag of hurt • Just awful for certain tasks (Blogging about code anyone?) • Developers love the control
  • A better way
  • Let the publisher createfields as they need them
  • What would this look like?
  • Composer Demo
  • Technical Overview • JavaScript Fieldtype Framework • Powered by RequireJS (AMD, load on demand) • Many fields work without modification • A fieldtype can be a single JS file
  • Front end control Article Page Title WYSWYG • “Linear” story allows layout control Gallery • Each “block” can be targeted with CSS WYSWYG • RSS + Atom feeds still work Image
  • Open Source Github Coming Soon...
  • Live ContentFinding new ways to publishClient Side Data
  • Data • Store thousands of entries • Channels, Categories & Status • Extensible suite of template tags
  • Data What about client side data?
  • Client Side Data Control Panel Templates 1. AJAX request to custom 1. AJAX request to custom JS/XML module method template 2. Parse AJAX request 2. Channel Entries Tag 3. Query DB Not flexible enough 4. EE->output-> No query strings send_ajax_response()
  • Channel Entries API • PHP • Create, Update, Delete... • No Read API (!)
  • EE JavaScript API • Why doesn’t it exist? • Fieldtypes tricky • What about: • Channels • Categories • Entry meta data • Site preferences • Standardised & predictable
  • EE JavaScript API What would this look like?
  • EEJSDemo
  • EEJS Overview • JavaScript Utility • Async (jQuery Deferreds) • Methods for: • Accessing Configuration • Building URLs (Templates, Actions, CP etc) • Channels and Channel Entries • Works in CP & Templates
  • EEJS in Templates • Works outside the Control Panel • Integrates with Web Apps • Makes your life easier
  • Open Source Github github.com/ckimrie/eejs
  • Live ContentFinding new ways to publishData Services
  • Data Services • EEJS makes working with data easy • CP & Templates • What about off-site? • APIs • Mobile Apps
  • Data Services • No standard external API • Custom APIs possible with templates • Tedious
  • Data Services Like EEJS, standardised data can be made available
  • Considerations • REST • CodeIgniter, not ExpressionEngine • Performance EE Sessions, template tracking, template parsing, • Output format are not needed !
  • Data Services What would this look like?
  • Data API Demo
  • Data API Overview • CodeIgniter Application • No installation • Uses EE configuration • Cacheable • Separate App = Customisable
  • Open Source Github github.com/ckimrie/ee-data-api
  • So you’ve seen... 3 Ideas that make ExpressionEngine a different kind of publishing platform
  • 3 Ideas Flexible Publishing Client Side Data Data Services
  • Thank You@chrisimriegithub.com/ckimriechris@moresoda.co.uk