• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Responsive WordPress Theming WordCamp Boston 2012
 

Responsive WordPress Theming WordCamp Boston 2012

on

  • 1,499 views

Maintaining Rr

Maintaining Rr

Statistics

Views

Total Views
1,499
Views on SlideShare
1,499
Embed Views
0

Actions

Likes
3
Downloads
32
Comments
0

0 Embeds 0

No embeds

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
  • \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
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Responsive WordPress Theming WordCamp Boston 2012 Responsive WordPress Theming WordCamp Boston 2012 Presentation Transcript

  • ResponsiveWordPress Theming
  • Jesse FriedmanAuthor, Professor, Developer - @professor
  • ResponsiveSo what’s the difference between a CMS based Responsive site and a static one?
  • HTML, CSS, JavaScript
  • I C ES S T R A P T DS RW O
  • I C ES S T R A P T DS RW O
  • S S R E D P O RW
  • FRAMEWORKS,
  • FRAMEWORKS,GRID SYSTEMS,
  • FRAMEWORKS,GRID SYSTEMS,ALL THAT STUFF,
  • FRAMEWORKS,GRID SYSTEMS,ALL THAT STUFF,STILL WORKS!
  • User Admin us·er ad·min
  • User Admin us·er ad·minA person responsible for running and operating a system
  • User Admin us·er ad·min
  • User Admin us·er ad·minIn other words, the person who’s gonna gaff up your design
  • User Admin of your designMay compromise the integrity
  • User Admin of your designMay compromise the integrity
  • Userexpected to maintain responsive content Admin’sCan’t be
  • Userexpected to maintain responsive content Admin’sCan’t be
  • User some road blocks Admin’sWill have
  • · Showing and Hiding Content based on user deviceUser some road blocks Admin’sWill have
  • · Showing and Hiding Content based on user device · Media and maintaining a fluid layoutUser some road blocks Admin’sWill have
  • · Showing and Hiding Content based on user device · Media and maintaining a fluid layout · Multiple ColumnsUser some road blocks Admin’sWill have
  • · Showing and Hiding Content based on user device · Media and maintaining a fluid layout · Multiple Columns · MenusUser some road blocks Admin’sWill have
  • Featured ImagesLeveraging WordPress
  • Featured ImagesLeveraging WordPress
  • Featured ImagesLeveraging WordPress
  • add_image_size( slider, 800, 600, true );add_image_size( sm-slider, 400, 300, true);add_image_size( post-thumb, 600, 350, true );add_image_size( sm-post-thumb, 300, 175, true ); Featured Images Leveraging WordPress
  • Multi-ColumnUsing the screen up
  • Multi-ColumnRemember responsive isn’t just mobile
  • Multi-ColumnRemember responsive isn’t just mobile
  • Multi-ColumnRemember responsive isn’t just mobile
  • Multi-ColumnRemember responsive isn’t just mobile
  • MenusMobile and Desktop Menu Locations
  • Content is KING!Empowering User Admins to choose when toshow content
  • What if at the server level you could say: Content is KING! Empowering User Admins to choose when to show content
  • What if at the server level you could say: On a mobile device? do this: Content is KING! Empowering User Admins to choose when to show content
  • What if at the server level you could say: On a mobile device? do this: THIS Content is KING! Empowering User Admins to choose when to show content
  • What if at the server level you could say: On a mobile device? do this: THIS else do this: Content is KING! Empowering User Admins to choose when to show content
  • What if at the server level you could say: On a mobile device? do this: THIS else do this: OTHER THIS Content is KING! Empowering User Admins to choose when to show content
  • WordPress wp_is_mobile();
  • WordPress wp_is_mobile();<?php if ( wp_is_mobile() ) the_post_thumbnail( post-thumb ); else the_post_thumbnail ( post-large );?>
  • What if at the server level you could say:
  • What if at the server level you could say:isiPhone()
  • What if at the server level you could say:isiPhone()isBlackBerry()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()
  • What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle()
  • What if at the server level you could say:isiPhone() isSamsungTablet()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS() isTeaShark()isAcerTablet() isSymbianOS()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS() isTeaShark()isAcerTablet() isSymbianOS() isBlazer()isYarvikTablet() isWindowsMobileOS()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS() isTeaShark()isAcerTablet() isSymbianOS() isBlazer()isYarvikTablet() isWindowsMobileOS() isSafari()isGenericTablet() isiOS()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS() isTeaShark()isAcerTablet() isSymbianOS() isBlazer()isYarvikTablet() isWindowsMobileOS() isSafari()isGenericTablet() isiOS() isMidori()isBlackBerryTablet() isFlashLiteOS()isiPad() isJavaOS()isKindle() isNokiaOS()
  • What if at the server level you could say:isiPhone() isSamsungTablet() iswebOS()isBlackBerry() isHTCtablet() isbadaOS()isHTC() isMotorolaTablet() isBREWOS()isNexus() isAsusTablet() isChrome()isDellStreak() isNookTablet() isDolfin()isMotorola() isAcerTablet() isOpera()isSamsung() isYarvikTablet() isSkyfire()isSony() isGenericTablet() isIE()isAsus() isAndroidOS() isFirefox()isPalm() isBlackBerryOS() isBolt()isGenericPhone() isPalmOS() isTeaShark()isAcerTablet() isSymbianOS() isBlazer()isYarvikTablet() isWindowsMobileOS() isSafari()isGenericTablet() isiOS() isMidori()isBlackBerryTablet() isFlashLiteOS() isGenericBrowser()isiPad() isJavaOS()isKindle() isNokiaOS()
  • WordPress PHP Mobile Detect
  • WordPress PHP Mobile Detect<?php if ( isiPhone() ) echo <img src=".../optimized-iphone.jpg">; elseif ( isMobile() ) echo <img src=".../mobile.jpg">; elseif ( isTablet() ) echo <img src=".../tablet.jpg">; else echo <img src=".../regular-image.jpg">;?>
  • ShortcodesEmpowering User Admins to choose when toshow content
  • function j2theme_nomobile( $atts, $content="" ) { global $detect; if( ! $detect->is_Mobile() )return "{$content}";}add_shortcode( nomobile, j2theme_nomobile ); Shortcodes Empowering User Admins to choose when to show content
  • ShortcodesEmpowering User Admins to choose when toshow content
  • ShortcodesEmpowering User Admins to choose when toshow content
  • function j2theme_onlymobile( $atts, $content="" ){ global $detect; if( $detect->is_Mobile() )return "{$content}";}add_shortcode( onlymobile, j2theme_onlymobile ); Shortcodes Empowering User Admins to choose when to show content
  • ShortcodesEmpowering User Admins to choose when toshow content
  • What Does it all MeanGreater control over content to build custombut unified experiences for everyone
  • Less HTTP requestsWhat Does it all MeanGreater control over content to build custombut unified experiences for everyone
  • Less HTTP requests No need for display:none;What Does it all MeanGreater control over content to build custombut unified experiences for everyone
  • Less HTTP requests No need for display:none; Maintain same content for everyoneWhat Does it all MeanGreater control over content to build custombut unified experiences for everyone
  • Less HTTP requests No need for display:none; Maintain same content for everyoneRemoval of calls to files you don’t need What Does it all Mean Greater control over content to build custom but unified experiences for everyone
  • REMEMBER!It’s about giving controlback to the User Admin
  • ?’sJesse FriedmanAuthor, Professor, Developer - @professor