Your SlideShare is downloading. ×
0
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Responsive WordPress Theming WordCamp Boston 2012
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Responsive WordPress Theming WordCamp Boston 2012

1,354

Published on

Maintaining Rr

Maintaining Rr

Published in: Technology, Business
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,354
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
33
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \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
  • Transcript

    • 1. ResponsiveWordPress Theming
    • 2. Jesse FriedmanAuthor, Professor, Developer - @professor
    • 3. ResponsiveSo what’s the difference between a CMS based Responsive site and a static one?
    • 4. HTML, CSS, JavaScript
    • 5. I C ES S T R A P T DS RW O
    • 6. I C ES S T R A P T DS RW O
    • 7. S S R E D P O RW
    • 8. FRAMEWORKS,
    • 9. FRAMEWORKS,GRID SYSTEMS,
    • 10. FRAMEWORKS,GRID SYSTEMS,ALL THAT STUFF,
    • 11. FRAMEWORKS,GRID SYSTEMS,ALL THAT STUFF,STILL WORKS!
    • 12. User Admin us·er ad·min
    • 13. User Admin us·er ad·minA person responsible for running and operating a system
    • 14. User Admin us·er ad·min
    • 15. User Admin us·er ad·minIn other words, the person who’s gonna gaff up your design
    • 16. User Admin of your designMay compromise the integrity
    • 17. User Admin of your designMay compromise the integrity
    • 18. Userexpected to maintain responsive content Admin’sCan’t be
    • 19. Userexpected to maintain responsive content Admin’sCan’t be
    • 20. User some road blocks Admin’sWill have
    • 21. · Showing and Hiding Content based on user deviceUser some road blocks Admin’sWill have
    • 22. · Showing and Hiding Content based on user device · Media and maintaining a fluid layoutUser some road blocks Admin’sWill have
    • 23. · Showing and Hiding Content based on user device · Media and maintaining a fluid layout · Multiple ColumnsUser some road blocks Admin’sWill have
    • 24. · Showing and Hiding Content based on user device · Media and maintaining a fluid layout · Multiple Columns · MenusUser some road blocks Admin’sWill have
    • 25. Featured ImagesLeveraging WordPress
    • 26. Featured ImagesLeveraging WordPress
    • 27. Featured ImagesLeveraging WordPress
    • 28. 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
    • 29. Multi-ColumnUsing the screen up
    • 30. Multi-ColumnRemember responsive isn’t just mobile
    • 31. Multi-ColumnRemember responsive isn’t just mobile
    • 32. Multi-ColumnRemember responsive isn’t just mobile
    • 33. Multi-ColumnRemember responsive isn’t just mobile
    • 34. MenusMobile and Desktop Menu Locations
    • 35. Content is KING!Empowering User Admins to choose when toshow content
    • 36. What if at the server level you could say: Content is KING! Empowering User Admins to choose when to show content
    • 37. 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
    • 38. 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
    • 39. 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
    • 40. 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
    • 41. WordPress wp_is_mobile();
    • 42. WordPress wp_is_mobile();<?php if ( wp_is_mobile() ) the_post_thumbnail( post-thumb ); else the_post_thumbnail ( post-large );?>
    • 43. What if at the server level you could say:
    • 44. What if at the server level you could say:isiPhone()
    • 45. What if at the server level you could say:isiPhone()isBlackBerry()
    • 46. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()
    • 47. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()
    • 48. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()
    • 49. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()
    • 50. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()
    • 51. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()
    • 52. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()
    • 53. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()
    • 54. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()
    • 55. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()
    • 56. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()
    • 57. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()
    • 58. What if at the server level you could say:isiPhone()isBlackBerry()isHTC()isNexus()isDellStreak()isMotorola()isSamsung()isSony()isAsus()isPalm()isGenericPhone()isAcerTablet()isYarvikTablet()isGenericTablet()isBlackBerryTablet()
    • 59. 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()
    • 60. 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()
    • 61. 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()
    • 62. 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()
    • 63. 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()
    • 64. 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()
    • 65. 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()
    • 66. 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()
    • 67. 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()
    • 68. 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()
    • 69. 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()
    • 70. 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()
    • 71. 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()
    • 72. 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()
    • 73. 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()
    • 74. 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()
    • 75. 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()
    • 76. 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()
    • 77. 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()
    • 78. 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()
    • 79. 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()
    • 80. 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()
    • 81. 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()
    • 82. 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()
    • 83. 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()
    • 84. 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()
    • 85. 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()
    • 86. 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()
    • 87. 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()
    • 88. 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()
    • 89. 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()
    • 90. 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()
    • 91. 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()
    • 92. 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()
    • 93. WordPress PHP Mobile Detect
    • 94. 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">;?>
    • 95. ShortcodesEmpowering User Admins to choose when toshow content
    • 96. 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
    • 97. ShortcodesEmpowering User Admins to choose when toshow content
    • 98. ShortcodesEmpowering User Admins to choose when toshow content
    • 99. 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
    • 100. ShortcodesEmpowering User Admins to choose when toshow content
    • 101. What Does it all MeanGreater control over content to build custombut unified experiences for everyone
    • 102. Less HTTP requestsWhat Does it all MeanGreater control over content to build custombut unified experiences for everyone
    • 103. Less HTTP requests No need for display:none;What Does it all MeanGreater control over content to build custombut unified experiences for everyone
    • 104. 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
    • 105. 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
    • 106. REMEMBER!It’s about giving controlback to the User Admin
    • 107. ?’sJesse FriedmanAuthor, Professor, Developer - @professor

    ×