$30 off During Our Annual Pro Sale. View Details »

Intro to Craft

Intro to Craft

Interested in breaking out of your boring old CMS? Craft CMS offers all of the functionality of the major content management systems without the technical debt. Learn why now is the time for Craft, along with all of the fundamentals you'll need to get started.

Philip Zaengle

April 29, 2016
Tweet

Other Decks in Programming

Transcript

  1. A N I N T R O T O

    View Slide

  2. M Y N A M E I S
    P H I L I P Z A E N G L E
    I C O D E A N D D O B U S I N E S S I N G T H I N G $
    Z A E N G L E . C O M / @ Z A E N G L E
    S L I D E S B Y D E R E K N E L S O N
    ^

    View Slide

  3. L E T S T A L K A B O U T
    C R A F T C M S

    View Slide

  4. W H A T I S C R A F T ?
    41

    View Slide

  5. Craft is a general-purpose CMS
    designed to do one thing really
    well: manage content.

    P I X E L A N D T O N I C
    B U I L D E R S O F C R A F T C M S

    View Slide

  6. C R A F T I S B U I L T O N
    • PHP 5.3.0+
    • Yii framework
    • Twig template engine
    • Developed, maintained by Pixel & Tonic
    and sold
    >

    View Slide

  7. $299.00
    C O M M E R C I A L

    View Slide

  8. O M G O S H !

    View Slide

  9. $299.00
    C O M M E R C I A L
    • $100 x 3hrs = $300
    • Staff support!
    • Case studies!!
    • Full time staff!!!

    View Slide

  10. C O N S I D E R A T I O N S
    • Speed to deployment
    • Feature fit

    View Slide

  11. Craft is like WordPress if it was
    stripped naked and then clothed
    in Advanced Custom Fields.

    M E G A N Z L O C K
    F R O N T - E N D D E V E L O P E R / V I G E T

    View Slide

  12. W H Y

    View Slide

  13. C R A F T F O R A U T H O R S
    • Fully responsive 

    control panel
    • Content preview
    • Drafts / change notes
    • Highly intuitive

    View Slide

  14. C R A F T F O R D E S I G N E R S
    • Complete front-end control
    • Editorial content simplified
    • Complex content modeling
    • Designers can {{code}}
    • Pretty intuitive

    View Slide

  15. • Twig
    • Documented API
    • Architecture

    (and lot’s of it)
    • Mostly intuitive
    • And more: localization,

    cloud asset storage, 

    user permissioning
    C R A F T F O R D E V E L O P E R S

    View Slide

  16. T W I G W H A T ! ?

    View Slide

  17. {# I’m a comment #}
    {{ variableName }}
    {% set variableName = “Phil Zaengle” %}
    T W I G 1 0 1

    View Slide

  18. {{ variableName | upper }}
    {% for var in arrayVar %}
    {{ var }}
    {% endfor %}
    T W I G 1 0 2

    View Slide

  19. {% set next = “Let’s Build” %}
    {% for i in 0..10 %}
    {{ i }} - {{ next | upper }}
    {% endfor %}
    T W I G 2 0 0

    View Slide

  20. T i t l e
    B o d y C o n t e n t
    e n t r y . t i t l e
    e n t r y . b o d y
    L E T ’ S B U I L D A P A G E

    View Slide

  21. N O W D O I T . / /

    View Slide

  22. View Slide

  23. C O N T E N T
    D E S I G N
    C O N T E N T M O D E L
    C O D E
    > > >

    View Slide

  24. Title {
    Content {

    View Slide

  25. Header / Title {
    Body Content {
    Quote Block {
    Body Content {
    Code Example {
    Body Content {
    Code Example {

    View Slide

  26. T i t l e
    I n t r o
    H e r o I m a g e
    E d i t o r i a l C o n t e n t
    - > S l i d e s h o w
    - > B o d y
    - > P u l l Q u o t e
    - > B l o g R e l a t i o n s h i p
    e n t r y . t i t l e
    e n t r y . i n t r o
    e n t r y . h e r o I m a g e
    e n t r y . m a t r i x
    - > m a t r i x . s l i d e s h o w
    - > m a t r i x . b o d y
    - > m a t r i x . q u o t e
    - > m a t r i x . b l o g s
    L E T ’ S B U I L D B L O G

    View Slide

  27. craft.entries
    .section(‘blog’)
    .limit(10)
    .before(2012)
    .offset(2)
    .order(‘dateCreated desc’)
    C R A F T T W I G

    View Slide

  28. {% set entries = craft.entries.section(‘blog’) %}
    {% for entry in entries %}
    {{ entry.title }}
    {% endfor %}
    C R A F T T W I G

    View Slide

  29. {% paginate craft.entries.section(‘blog’)
    as page, entries %}
    {% for entry in entries %}
    {{ entry.title }}
    {% endfor %}
    C R A F T T W I G

    View Slide

  30. N O W D O I T . / /

    View Slide

  31. View Slide

  32. full localization
    user accounts
    robust api
    growing community
    J U S T S T A R T I N G

    View Slide

  33. [email protected]
    T H A N K S !
    @zaengle

    View Slide

  34. View Slide