SlideShare ist ein Scribd-Unternehmen logo
1 von 69
Downloaden Sie, um offline zu lesen
Integrating Websites with
TYPO3 Neos
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
3 Ways to go on
Dienstag, 28. Mai 13
Classic Templating
3 Ways to go on
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Templavoila
3 Ways to go on
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Fluid Template
3 Ways to go on
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Write Typoscript
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Create Pages
Dienstag, 28. Mai 13
Add Dummy Content
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Folder Structure?
Dienstag, 28. Mai 13
Folder Structure?
fileadmin
templates
extension
?
Dienstag, 28. Mai 13
TypoScript?
Dienstag, 28. Mai 13
TYPO3 Neos
Dienstag, 28. Mai 13
Installation
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Site Package
Dienstag, 28. Mai 13
MyCompany.MySite
Classes
Configuration
Resources
Site Package Contents
Dienstag, 28. Mai 13
Resources Contents
Resources
Public
Private
Dienstag, 28. Mai 13
Public
StyleSheets
Images
Scripts
Public Resources Contents
...
Dienstag, 28. Mai 13
Private
Content
Templates
TypoScripts
Private Resources Contents
Dienstag, 28. Mai 13
Content/Sites.xml
<node type="TYPO3.Neos.NodeTypes:Page" nodeName="anotherpage" locale="">
<properties>
<title>Another Page</title>
</properties>
<node type="TYPO3.Neos.NodeTypes:Section" nodeName="main" locale="">
<node type="TYPO3.Neos.NodeTypes:Headline" nodeName="headline1" locale="">
<properties>
<title><![CDATA[<h1>Want More?</h1>]]></title>
</properties>
</node>
<node type="TYPO3.Neos.NodeTypes:Text" nodeName="text1" locale="">
<properties>
<text><![CDATA[
Some content
]]></text>
</properties>
</node>
</node>
</node>
Dienstag, 28. Mai 13
Content Model
Dienstag, 28. Mai 13
Nodes
Dienstag, 28. Mai 13
Node structure
site root
page
content section
content element
representation of
domain models
Dienstag, 28. Mai 13
/sites/typo3org/home/subpage/main/text1
are addressed by nodePaths
Dienstag, 28. Mai 13
are addressed by nodePaths
/sites/typo3org/home/subpage/main/text1
site root
Dienstag, 28. Mai 13
are addressed by nodePaths
/sites/typo3org/home/subpage/main/text1
pages
site root
Dienstag, 28. Mai 13
are addressed by nodePaths
/sites/typo3org/home/subpage/main/text1
section
pages
site root
Dienstag, 28. Mai 13
are addressed by nodePaths
/sites/typo3org/home/subpage/main/text1
content
section
pages
site root
Dienstag, 28. Mai 13
Private
Content
Templates
TypoScripts
Private Resources Contents
Dienstag, 28. Mai 13
Page Template
Dienstag, 28. Mai 13
Fluid Template
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Private
Content
Templates
TypoScripts
Private Resources Contents
Dienstag, 28. Mai 13
TypoScript2 Basics
Dienstag, 28. Mai 13
FEATURE
Consistency
Dienstag, 28. Mai 13
FEATURE
Extensibility
Dienstag, 28. Mai 13
FEATURE
Simplicicy
Dienstag, 28. Mai 13
TypoScript Objects
• Template
• Array
• Collection
• Case
• Menu
• (Page)
Dienstag, 28. Mai 13
FEATURE
Flexibility
Dienstag, 28. Mai 13
TypoScripts Contents
TypoScripts
Library
Nodes
Dienstag, 28. Mai 13
TypoScripts Contents
TypoScripts
Library
Nodes
Root.ts2
Dienstag, 28. Mai 13
TypoScripts Contents
TypoScripts
Library
Nodes
Root.ts2
Dienstag, 28. Mai 13
REMINDER
site root
page
content section
content element
representation of
domain models
/sites/typo3org/home/subpage
Dienstag, 28. Mai 13
REMINDER
site root
page
content section
content element
representation of
domain models
/sites/typo3org/home/subpage
Dienstag, 28. Mai 13
TypoScripts Contents
TypoScripts
Library
Nodes
Root.ts2
Home Subpage.ts2
Dienstag, 28. Mai 13
Dienstag, 28. Mai 13
Prototypes
Dienstag, 28. Mai 13
prototype(TYPO3.Neos:MenuRenderer).implementationClassName = ↵
'TYPO3TYPO3TypoScriptMenuRenderer'
prototype(TYPO3.Neos:Section) < prototype(TYPO3.TypoScript:CollectionRenderer)
prototype(TYPO3.Neos:Section) {
implementationClassName = 'TYPO3NeosTypoScriptSection'
collection = ${context.children(this.getNodePath()).children()}
}
Dienstag, 28. Mai 13
EEL?
Dienstag, 28. Mai 13
FlowQuery?
EEL?
Dienstag, 28. Mai 13
Fizzle?
FlowQuery?
EEL?
Dienstag, 28. Mai 13
Lets take it apart
${q(node).children().filter('left').first()}
Dienstag, 28. Mai 13
Simple Property Access
${q(node).property('text')}
Dienstag, 28. Mai 13
Traversal
${q(node).children('left').first()}
${q(node).children().filter('left').first()}
${q(node).parents()}
Dienstag, 28. Mai 13
Processors
Dienstag, 28. Mai 13
Processors
prototype(TYPO3.Neos.NodeTypes:TextWithImage)
.text << 1.wrap(prefix: '<header>', suffix:
'</header>')
Dienstag, 28. Mai 13
Tips
Dienstag, 28. Mai 13
Custom Node Types
Dienstag, 28. Mai 13
Stick to conventions
Dienstag, 28. Mai 13

Weitere ähnliche Inhalte

Mehr von Christian Müller

Perfect Neos Team For Success
Perfect Neos Team For SuccessPerfect Neos Team For Success
Perfect Neos Team For SuccessChristian Müller
 
F Files - Learnings from 3 years of Neos Support
F Files - Learnings from 3 years of Neos SupportF Files - Learnings from 3 years of Neos Support
F Files - Learnings from 3 years of Neos SupportChristian Müller
 
Neos Bloopers [Inspiring 2016]
Neos Bloopers [Inspiring 2016]Neos Bloopers [Inspiring 2016]
Neos Bloopers [Inspiring 2016]Christian Müller
 
TypoScript and EEL outside of Neos [InspiringFlow2013]
TypoScript and EEL outside of Neos [InspiringFlow2013]TypoScript and EEL outside of Neos [InspiringFlow2013]
TypoScript and EEL outside of Neos [InspiringFlow2013]Christian Müller
 
TYPO3 Neos In Enterprise Applications
TYPO3 Neos In Enterprise ApplicationsTYPO3 Neos In Enterprise Applications
TYPO3 Neos In Enterprise ApplicationsChristian Müller
 
Integrating Websites With TYPO3 Neos
Integrating Websites With TYPO3 NeosIntegrating Websites With TYPO3 Neos
Integrating Websites With TYPO3 NeosChristian Müller
 
[T3CON12CA] TYPO3 Phoenix Templating Workshop
[T3CON12CA] TYPO3 Phoenix Templating Workshop[T3CON12CA] TYPO3 Phoenix Templating Workshop
[T3CON12CA] TYPO3 Phoenix Templating WorkshopChristian Müller
 
[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix
[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix
[T3CON12CA] Content Model and TypoScript in TYPO3 PhoenixChristian Müller
 

Mehr von Christian Müller (9)

Neos Agile Teams
Neos Agile TeamsNeos Agile Teams
Neos Agile Teams
 
Perfect Neos Team For Success
Perfect Neos Team For SuccessPerfect Neos Team For Success
Perfect Neos Team For Success
 
F Files - Learnings from 3 years of Neos Support
F Files - Learnings from 3 years of Neos SupportF Files - Learnings from 3 years of Neos Support
F Files - Learnings from 3 years of Neos Support
 
Neos Bloopers [Inspiring 2016]
Neos Bloopers [Inspiring 2016]Neos Bloopers [Inspiring 2016]
Neos Bloopers [Inspiring 2016]
 
TypoScript and EEL outside of Neos [InspiringFlow2013]
TypoScript and EEL outside of Neos [InspiringFlow2013]TypoScript and EEL outside of Neos [InspiringFlow2013]
TypoScript and EEL outside of Neos [InspiringFlow2013]
 
TYPO3 Neos In Enterprise Applications
TYPO3 Neos In Enterprise ApplicationsTYPO3 Neos In Enterprise Applications
TYPO3 Neos In Enterprise Applications
 
Integrating Websites With TYPO3 Neos
Integrating Websites With TYPO3 NeosIntegrating Websites With TYPO3 Neos
Integrating Websites With TYPO3 Neos
 
[T3CON12CA] TYPO3 Phoenix Templating Workshop
[T3CON12CA] TYPO3 Phoenix Templating Workshop[T3CON12CA] TYPO3 Phoenix Templating Workshop
[T3CON12CA] TYPO3 Phoenix Templating Workshop
 
[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix
[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix
[T3CON12CA] Content Model and TypoScript in TYPO3 Phoenix
 

[T3CB13] Integrating websites with neos