Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Online Businesses

Keir Whitaker
September 02, 2013

Building Online Businesses

Keir Whitaker

September 02, 2013
Tweet

More Decks by Keir Whitaker

Other Decks in Technology

Transcript

  1. In 2012 50% of theme designers made $20k+ and several

    made $100k+ Tuesday, 3 September 13
  2. {{ product.title | upcase }} {{ 'logo.png' | asset_url |

    img_tag: 'Site Logo' }} Tuesday, 3 September 13
  3. {{ product.title | upcase }} {{ 'logo.png' | asset_url |

    img_tag: 'Site Logo' }} Tuesday, 3 September 13
  4. {% if product.available %} Show Add to cart button here

    {% else %} Display message! {% endif %} Tuesday, 3 September 13
  5. {% if product.available %} Show Add to cart button here

    {% else %} Display message! {% endif %} Tuesday, 3 September 13
  6. {% for image in product.images %} <img src="{{ image |

    product_img_url: 'medium' }}" /> {% endfor %} Tuesday, 3 September 13
  7. {% for image in product.images %} <img src="{{ image |

    product_img_url: 'medium' }}" /> {% endfor %} Tuesday, 3 September 13
  8. <html> <head> {{ content_for_header }} <title>{{ shop.name }} - {{

    page_title }}</title> {{ 'screen.css' | asset_url | stylesheet_tag }} </head> <body> {{ content_for_layout }} </body> </html> Tuesday, 3 September 13
  9. <html> <head> {{ content_for_header }} <title>{{ shop.name }} - {{

    page_title }}</title> {{ 'screen.css' | asset_url | stylesheet_tag }} </head> <body> {{ content_for_layout }} </body> </html> Tuesday, 3 September 13
  10. {{ 'screen.css' | asset_url | stylesheet_tag }} { 'logo.png' |

    asset_url | img_tag: 'Site Logo' }} Tuesday, 3 September 13
  11. {{ 'screen.css' | asset_url | stylesheet_tag }} { 'logo.png' |

    asset_url | img_tag: 'Site Logo' }} Tuesday, 3 September 13
  12. “With Elliot, we didn’t really log formal rounds of iteration.

    We probably have some Github commits that could show the evolution but that part of the process was delightfully sloppy with little regard for archiving.” Trent Walton on the process Tuesday, 3 September 13
  13. “With Elliot, we didn’t really log formal rounds of iteration.

    We probably have some Github commits that could show the evolution but that part of the process was delightfully sloppy with little regard for archiving.” Trent Walton on the process Tuesday, 3 September 13
  14. body { font: 100%/1.5 "ff-unit- slab-web", "Georgia", "Times New Roman",

    serif; font-weight: 300; color: #666666; } Tuesday, 3 September 13
  15. body { font: 100%/1.5 "ff-unit- slab-web", "Georgia", "Times New Roman",

    serif; font-weight: 300; color: #666666; } Tuesday, 3 September 13
  16. @media (min-width: 700px) @media (min-width: 850px) @media (min-width: 1100px) @media

    (min-width: 1400px) @media (min-width: 1680px) Tuesday, 3 September 13
  17. “The Paravel guys are professional whilst still being great fun

    to work with, and the finished product is exceptional. I had no idea what they’d produce when I commissioned them, but I knew it would be something great, which it is.” Elliot Jay Stocks on collaboration Tuesday, 3 September 13
  18. ★ Created a layout file ★ Converted .php pages to

    specific Shopify templates ★ Created CSS for buttons based on the anchor styles ★ Created a development shop to sync with Tuesday, 3 September 13
  19. {% for product in collection.magazines.product limit: 1 %} Output product

    details here {% endfor %} Tuesday, 3 September 13
  20. {% for product in collection.magazines.product limit: 1 %} Output product

    details here {% endfor %} Tuesday, 3 September 13
  21. {% if collection.handle == 'magazines' %} {% include 'collection-magazines' %}

    {% elsif collection.handle == 'posters' %} {% include 'collection-posters' %} {% else %} {% include 'collection-default' %} {% endif %} Tuesday, 3 September 13
  22. {% if collection.handle == 'magazines' %} {% include 'collection-magazines' %}

    {% elsif collection.handle == 'posters' %} {% include 'collection-posters' %} {% else %} {% include 'collection-default' %} {% endif %} Tuesday, 3 September 13
  23. {% for product in collection.products %} <form action="/cart/add" method="post"> <input

    type="submit" name="add" id="add" value="Buy {{ variant.title }}" class="button"> <input type="hidden" value="{{variant.id}}" name="id"> </form> {% endfor %} Tuesday, 3 September 13
  24. {% for product in collection.products %} <form action="/cart/add" method="post"> <input

    type="submit" name="add" id="add" value="Buy {{ variant.title }}" class="button"> <input type="hidden" value="{{variant.id}}" name="id"> </form> {% endfor %} Tuesday, 3 September 13
  25. {% if settings.home_hero_text_url and settings.home_hero_text %} <a href="{{ settings.home_hero_text_url }}">

    {{ settings.home_hero_text }} </a> {% endif %} Tuesday, 3 September 13
  26. {% if settings.home_hero_text_url and settings.home_hero_text %} <a href="{{ settings.home_hero_text_url }}">

    {{ settings.home_hero_text }} </a> {% endif %} Tuesday, 3 September 13
  27. jQuery(function($) { $('a.blackflag').on('click', function(e) { e.preventDefault(); var form = $('<form>').attr({

    method: 'post', action: '/cart/add', enctype: 'multipart/form-data' ! ! ! ! }); $('<input>').attr({ type: 'text', name: 'id', value: '{{ settings.home_hero_variant_id }}' }).appendTo(form); ! ! ! form.appendTo($('body')); form.submit(); }); Tuesday, 3 September 13
  28. jQuery(function($) { $('a.blackflag').on('click', function(e) { e.preventDefault(); var form = $('<form>').attr({

    method: 'post', action: '/cart/add', enctype: 'multipart/form-data' ! ! ! ! }); $('<input>').attr({ type: 'text', name: 'id', value: '{{ settings.home_hero_variant_id }}' }).appendTo(form); ! ! ! form.appendTo($('body')); form.submit(); }); Tuesday, 3 September 13
  29. “We absolutely had to minimize file size for images, especially

    with the home page. We’ve used picturefill.js multiple times in the past, including an adapted version for the Microsoft homepage.” Trent Walton on picturefill.js Tuesday, 3 September 13
  30. <div data-picture data-alt="8 Faces Magazine"> <div data-src="{{ 'home-page-hero-small.jpg' | asset_url

    }}"></div> <div data-src="{{ 'home-page-hero-medium.jpg' | asset_url }}" data-media="(min-width: 500px)"></div> <div data-src="{{ 'home-page-hero.jpg' | asset_url }}" data-media="(min-width: 1100px)"></div> <noscript> <img src="{{ 'home-page-hero-small.jpg' | asset_url }}"> </noscript> </div> Tuesday, 3 September 13
  31. <div data-picture data-alt="8 Faces Magazine"> <div data-src="{{ 'home-page-hero-small.jpg' | asset_url

    }}"></div> <div data-src="{{ 'home-page-hero-medium.jpg' | asset_url }}" data-media="(min-width: 500px)"></div> <div data-src="{{ 'home-page-hero.jpg' | asset_url }}" data-media="(min-width: 1100px)"></div> <noscript> <img src="{{ 'home-page-hero-small.jpg' | asset_url }}"> </noscript> </div> Tuesday, 3 September 13
  32. {% for product in collection.magazines.products %} Output product details here

    {% include 'picturefill' with product %} {% endfor %} Tuesday, 3 September 13
  33. {% for product in collection.magazines.products %} Output product details here

    {% include 'picturefill' with product %} {% endfor %} Tuesday, 3 September 13
  34. <div data-picture data-alt="8 Faces Magazine"> <div data-src="{{ picturefill.featured_image | product_img_url:

    'small' }}"></div> <div data-src="{{ picturefill.featured_image | product_img_url: 'medium' }}" data-media="(min-width: 500px)"></div> <div data-src="{{ picturefill.featured_image | product_img_url: 'original' }}" data-media="(min-width: 1100px)"></div> <noscript> <img src="{{ picturefill.featured_image | product_img_url: 'small' }}"> </noscript> </div> Tuesday, 3 September 13
  35. <div data-picture data-alt="8 Faces Magazine"> <div data-src="{{ picturefill.featured_image | product_img_url:

    'small' }}"></div> <div data-src="{{ picturefill.featured_image | product_img_url: 'medium' }}" data-media="(min-width: 500px)"></div> <div data-src="{{ picturefill.featured_image | product_img_url: 'original' }}" data-media="(min-width: 1100px)"></div> <noscript> <img src="{{ picturefill.featured_image | product_img_url: 'small' }}"> </noscript> </div> Tuesday, 3 September 13
  36. {% item.variant.id == 346188649 or item.variant.id == 346188733 %} <td>

    ! <a href="http://readdigest.com"> ! ! {{ item.title }} ! </a> </td> {% endif %} Tuesday, 3 September 13
  37. {% item.variant.id == 346188649 or item.variant.id == 346188733 %} <td>

    ! <a href="http://readdigest.com"> ! ! {{ item.title }} ! </a> </td> {% endif %} Tuesday, 3 September 13
  38. The days of banks, merchant accounts, & payment gateways are

    (almost) gone! Tuesday, 3 September 13
  39. ★ Shopify ★ FetchApp ★ Stripe ★ Xero ★ TextExpander

    ★ Help Scout Tuesday, 3 September 13
  40. Keir Whitaker / @keirwhitaker / keirwhitaker.com Thank You keirwhitaker.com /

    @keirwhitaker viewportindustries.com / @viewportind backtofrontshow.com / @backtofrontshow shopify.com / @shopify Tuesday, 3 September 13