64
TypoScript and EEL outside of Neos

TypoScript and EEL outside of Neos [InspiringFlow2013]

Embed Size (px)

DESCRIPTION

Talk from Inspiring Flow 2013 describing TypoScript and Embedded Expression Language in Neos and use cases to have both in TYPO3 Flow applications and extend them for your needs.

Citation preview

Page 1: TypoScript and EEL outside of Neos [InspiringFlow2013]

TypoScript and EEL outside of Neos

Page 2: TypoScript and EEL outside of Neos [InspiringFlow2013]

Summary

‣ TypoScript evolution

‣ TypoScript 2 features

‣ EEL features

‣ Use cases outside of Neos

‣ Examples

Page 3: TypoScript and EEL outside of Neos [InspiringFlow2013]
Page 4: TypoScript and EEL outside of Neos [InspiringFlow2013]

A short storyabout TypoScript

Page 5: TypoScript and EEL outside of Neos [InspiringFlow2013]

How I came to TypoScript

‣ big event organized in free time

‣ 3 designs, 2 languages

‣ we need a CMS

‣ TYPO3 seemed nice

Page 6: TypoScript and EEL outside of Neos [InspiringFlow2013]

BUT

Page 7: TypoScript and EEL outside of Neos [InspiringFlow2013]

TypoScript was so

Page 8: TypoScript and EEL outside of Neos [InspiringFlow2013]

still it offered the needed options

Page 9: TypoScript and EEL outside of Neos [InspiringFlow2013]

TypoScript in TYPO3 CMS

Page 10: TypoScript and EEL outside of Neos [InspiringFlow2013]

The good parts

‣ flexibility

‣ accessing database records (content)

‣ using templates

‣ use in own extensions

Page 11: TypoScript and EEL outside of Neos [InspiringFlow2013]

the bad parts

‣ extensibility

‣ syntax

‣ too many options

Page 12: TypoScript and EEL outside of Neos [InspiringFlow2013]

TypoScript in Neos

Page 13: TypoScript and EEL outside of Neos [InspiringFlow2013]

flexible content rendering

Page 14: TypoScript and EEL outside of Neos [InspiringFlow2013]

Fluid templates

Page 15: TypoScript and EEL outside of Neos [InspiringFlow2013]

limited set of objects

Page 16: TypoScript and EEL outside of Neos [InspiringFlow2013]

Basic TypoScript objects

‣ Template

Page 17: TypoScript and EEL outside of Neos [InspiringFlow2013]

Basic TypoScript objects

‣ Template

‣ Array

Page 18: TypoScript and EEL outside of Neos [InspiringFlow2013]

Basic TypoScript objects

‣ Template

‣ Array

‣ Collection

Page 19: TypoScript and EEL outside of Neos [InspiringFlow2013]

Basic TypoScript objects

‣ Template

‣ Array

‣ Collection

‣ Case

Page 20: TypoScript and EEL outside of Neos [InspiringFlow2013]

Basic TypoScript objects

‣ Template

‣ Array

‣ Collection

‣ Case

‣ Value

Page 21: TypoScript and EEL outside of Neos [InspiringFlow2013]

simple overriding

Page 22: TypoScript and EEL outside of Neos [InspiringFlow2013]

processors

Page 23: TypoScript and EEL outside of Neos [InspiringFlow2013]

processors

Page 24: TypoScript and EEL outside of Neos [InspiringFlow2013]

What can I use TypoScript for?

Page 25: TypoScript and EEL outside of Neos [InspiringFlow2013]

Make your rendering flexible

Page 26: TypoScript and EEL outside of Neos [InspiringFlow2013]

Generators

Page 27: TypoScript and EEL outside of Neos [InspiringFlow2013]

Output of unknown data

Page 28: TypoScript and EEL outside of Neos [InspiringFlow2013]

How to extend TypoScript

Page 29: TypoScript and EEL outside of Neos [InspiringFlow2013]

Implement custom TypoScript objects

Page 30: TypoScript and EEL outside of Neos [InspiringFlow2013]
Page 31: TypoScript and EEL outside of Neos [InspiringFlow2013]
Page 32: TypoScript and EEL outside of Neos [InspiringFlow2013]

Add processors

Page 33: TypoScript and EEL outside of Neos [InspiringFlow2013]
Page 34: TypoScript and EEL outside of Neos [InspiringFlow2013]

Embedded Expression

Language (EEL)

Page 35: TypoScript and EEL outside of Neos [InspiringFlow2013]

domain specific language

Page 36: TypoScript and EEL outside of Neos [InspiringFlow2013]

Based on Parsing Expression Grammar

Page 37: TypoScript and EEL outside of Neos [InspiringFlow2013]

WAIT

Page 38: TypoScript and EEL outside of Neos [InspiringFlow2013]

Why would I want

in my code?

Page 39: TypoScript and EEL outside of Neos [InspiringFlow2013]
Page 40: TypoScript and EEL outside of Neos [InspiringFlow2013]

jQuery like syntax

Page 41: TypoScript and EEL outside of Neos [InspiringFlow2013]

Collections

Page 42: TypoScript and EEL outside of Neos [InspiringFlow2013]

Traversal

Page 43: TypoScript and EEL outside of Neos [InspiringFlow2013]

What can I use EEL for?

Page 44: TypoScript and EEL outside of Neos [InspiringFlow2013]

Accessing objects

Page 45: TypoScript and EEL outside of Neos [InspiringFlow2013]

Accessing objects

Page 46: TypoScript and EEL outside of Neos [InspiringFlow2013]

Accessing objects

Page 47: TypoScript and EEL outside of Neos [InspiringFlow2013]

Operations

Page 48: TypoScript and EEL outside of Neos [InspiringFlow2013]

Operations

Page 49: TypoScript and EEL outside of Neos [InspiringFlow2013]

comparisons

Page 50: TypoScript and EEL outside of Neos [InspiringFlow2013]

comparisons

Page 51: TypoScript and EEL outside of Neos [InspiringFlow2013]

Filtering objects

Page 52: TypoScript and EEL outside of Neos [InspiringFlow2013]

Filtering objects

Page 53: TypoScript and EEL outside of Neos [InspiringFlow2013]

How to extend EEL?

Page 54: TypoScript and EEL outside of Neos [InspiringFlow2013]

Add custom operations

Page 55: TypoScript and EEL outside of Neos [InspiringFlow2013]

Manipulate context

Page 56: TypoScript and EEL outside of Neos [InspiringFlow2013]

Existing Examples

‣ Views Configuration

‣ TYPO3.Expose

‣ Corner.Shop demo package

‣ RobertLemke.Plugin.Blog package

Page 57: TypoScript and EEL outside of Neos [InspiringFlow2013]

Conclusion

‣ TypoScript

Page 58: TypoScript and EEL outside of Neos [InspiringFlow2013]

Conclusion

‣ TypoScript

Modular and flexible rendering

Rendering of unknown data

Page 59: TypoScript and EEL outside of Neos [InspiringFlow2013]

Conclusion

‣ TypoScript

Modular and flexible rendering

Rendering of unknown data

‣ Embedded Expression Language

Page 60: TypoScript and EEL outside of Neos [InspiringFlow2013]

Conclusion

‣ TypoScript

Modular and flexible rendering

Rendering of unknown data

‣ Embedded Expression Language

Object Access

Dynamic Configuration

Page 61: TypoScript and EEL outside of Neos [InspiringFlow2013]

Inspired?

Page 62: TypoScript and EEL outside of Neos [InspiringFlow2013]

How will YOU use it?

Page 63: TypoScript and EEL outside of Neos [InspiringFlow2013]

@daskitsunet

‣ like Books, Music and tea and more

‣ Flow and Neos Core Team Member

‣ Freelance Trainer / Developer

‣ available for you in chat and mailing

lists all day (and sometimes night) long

‣ plays the piano

Page 64: TypoScript and EEL outside of Neos [InspiringFlow2013]

Thank you!