TYPO3 NeosEen site bouwen met
‘The new kid on the block’
maandag 5 november 12
Inspiring people toshare
Rens Admiraal
Flow / Neos core developer
maandag 5 november 12
Inspiring people toshare
Huidige Status TYPO3 Neos
Content editing
Frontend plugins
Backend modules
Workspaces
TypoScript2
maandag 5 november 12
Inspiring people toshare
Doorsnede TYPO3 Neos Site
TYPO3 CR
Fluid
TypoScript2
TYPO3 Flow
TYPO
3 Ne
osPHP / Webserver
Database
CMS / Static
Reso
urce
s
Webserver
maandag 5 november 12
Inspiring people toshare
Installatie TYPO3 Neos - Composer
maandag 5 november 12
Inspiring people toshare
-
name: 'Neos'
uriPattern: '<NeosSubroutes>'
subRoutes:
NeosSubroutes:
package: TYPO3.TYPO3
Installatie TYPO3 Neos - Routes.yaml
maandag 5 november 12
Inspiring people toshare
Installatie TYPO3 Neos - Setup
maandag 5 november 12
Inspiring people toshare
Site Package
MyCompany.MySite
Classes
Resources
igurationConf
maandag 5 november 12
Inspiring people toshare
Site Package
Resources
Public
Private
maandag 5 november 12
Inspiring people toshare
Public Resources
Public
StyleSheets
Images
JavaScripts
...
maandag 5 november 12
Inspiring people toshare
Private Resources
Private
Content
Templates
TypoScripts
maandag 5 november 12
Inspiring people toshare
<node type="TYPO3.Phoenix.ContentTypes:Page" nodeName="anotherpage" locale="">
<properties>
<title>Another Page</title>
</properties>
<node type="TYPO3.Phoenix.ContentTypes:Section" nodeName="main" locale="">
<node type="TYPO3.Phoenix.ContentTypes:Headline" nodeName="headline1" locale="">
<properties>
<title><![CDATA[<h1>Want More?</h1>]]></title>
</properties>
</node>
<node type="TYPO3.Phoenix.ContentTypes:Text" nodeName="text1" locale="">
<properties>
<text><![CDATA[Some content]]></text>
</properties>
</node>
</node>
</node>
Resources/Private/Content/Sites.xml
maandag 5 november 12
Inspiring people toshare
Content Model - Nodes
site root
page
content section
content element
representation of domain models
maandag 5 november 12
Inspiring people toshare
/sites/typo3org/home/subpage/main/text1
Content Model - nodePaths
maandag 5 november 12
Inspiring people toshare
/sites/typo3org/home/subpage/main/text1
Content Model - nodePaths
site root
maandag 5 november 12
Inspiring people toshare
/sites/typo3org/home/subpage/main/text1
Content Model - nodePaths
site rootpages
maandag 5 november 12
Inspiring people toshare
/sites/typo3org/home/subpage/main/text1
Content Model - nodePaths
site rootpages
sections
maandag 5 november 12
Inspiring people toshare
/sites/typo3org/home/subpage/main/text1
Content Model - nodePaths
site rootpages
sectionscontent
maandag 5 november 12
Inspiring people toshare
Private Resources
Private
Content
Templates
TypoScripts
maandag 5 november 12
Inspiring people toshare
Page Template
maandag 5 november 12
Inspiring people toshare
Page Template - Header
maandag 5 november 12
Inspiring people toshare
Page Template - Sections / Parts
maandag 5 november 12
Inspiring people toshare
Private Resources
Private
Content
Templates
TypoScripts
maandag 5 november 12
Inspiring people toshare
TypoScript
Opgeslagen in *.ts2 bestandenEr bestaat een node type ‘TypoScript’ indien dit eventueel nodig is, geen best practice!
Consistente syntax
Uitbreidbaar
Flexibel
Niet gelimiteerd tot websites
Eenvoudig
maandag 5 november 12
Inspiring people toshare
Eenvoudig - Set TypoScript Objects
Template
Array
Collection
Case
Menu
(Page)
maandag 5 november 12
Inspiring people toshare
TypoScript Folderstructuur
TypoScripts
Library
Nodes
Root.ts2
maandag 5 november 12
Inspiring people toshare
TypoScript Folderstructuur
TypoScripts
Library
Nodes
Root.ts2
Home Subpage.ts2
maandag 5 november 12
Inspiring people toshare
TypoScript Syntax Voorbeeld
maandag 5 november 12
Inspiring people toshare
prototype(TYPO3.TYPO3:Menu).@class = ↵'TYPO3\\TYPO3\\TypoScript\\MenuImplementation'
prototype(TYPO3.PhoenixDemoTypo3Org:Registration) < ↵prototype(TYPO3.Phoenix.ContentTypes:Plugin)
prototype(TYPO3.PhoenixDemoTypo3Org:Registration) {
package = 'TYPO3.PhoenixDemoTypo3Org'
controller = 'Registration'
}
TypoScript- Prototype
maandag 5 november 12
Inspiring people toshare
EEL / FlowQuery - Node selectie / traversal
${q(node).children().filter('left').first()}
Expert functie
maandag 5 november 12
Inspiring people toshare
EEL / FlowQuery - Property Access
${q(node).property(‘text’)}
Expert functie
maandag 5 november 12
Inspiring people toshare
TypoScript - Processors
prototype(TYPO3.Phoenix.ContentTypes:TextWithImage)↵.text << 1.wrap(prefix: '<p>', suffix: '</p>')
Expert functie
maandag 5 november 12
Inspiring people toshare
Custom Content Elementen
maandag 5 november 12
Inspiring people toshare
Stick To Conventions!
maandag 5 november 12
Inspiring people toshare
maandag 5 november 12
Ons Verzoek
maandag 5 november 12
Probeer TYPO3 Neos,en geef ons feedback!
maandag 5 november 12
Inspiring people toshare
? ? ? ? ?
IRC: #typo3-neos op freenode.org
maandag 5 november 12