

This TypoScript Snippet changes the standard header layout, so headers will be prefixed with a number.
If first header is of type 1 (or default), then 1 digit number will be prefixed.
If the header following a header type 1, then 2 digit number will be prefixed and so on.
So a page with header types like this:
type1
type2
type2
type3
type2
type1
type1
would look like this:
1 header
1.1 header
1.2 header
1.2.1 header
1.3 header
2 header
3 header
Just paste the following code to the TYPO3 setup:
lib.stdheader.10.1 > lib.stdheader.10.1 = COA lib.stdheader.10.1 { 10 = LOAD_REGISTER 10.H1Counter.cObject = TEXT 10.H1Counter.cObject.data = register:H1Counter 10.H1Counter.cObject.wrap = |+1 10.H1Counter.cObject.if.isTrue.current = 1 10.H1Counter.prioriCalc = intval 10.H2Counter = 0 10.H3Counter = 0 10.H4Counter = 0 10.H5Counter = 0 20 = TEXT 20.current = 1 20.insertData = 1 20.fontTag = <h1{register:headerStyle}{register:headerClass}>{register:H1Counter}: |</h1> } lib.stdheader.10.2 > lib.stdheader.10.2 < lib.stdheader.10.1 lib.stdheader.10.2 { 10.H2Counter > 10.H2Counter.cObject < .10.H1Counter.cObject 10.H2Counter.cObject.data = register:H2Counter 10.H2Counter.prioriCalc = intval 10.H1Counter > 20.fontTag = <h2{register:headerStyle}{register:headerClass}>{register:H1Counter}.{register:H2Counter}: |</h2> } lib.stdheader.10.3 > lib.stdheader.10.3 < lib.stdheader.10.2 lib.stdheader.10.3 { 10.H3Counter > 10.H3Counter.cObject < .10.H2Counter.cObject 10.H3Counter.cObject.data = register:H3Counter 10.H3Counter.prioriCalc = intval 10.H2Counter > 20.fontTag = <h3{register:headerStyle}{register:headerClass}>{register:H1Counter}.{register:H2Counter}.{register:H3Counter}: |</h3> } lib.stdheader.10.4 > lib.stdheader.10.4 < lib.stdheader.10.3 lib.stdheader.10.4 { 10.H4Counter > 10.H4Counter.cObject < .10.H3Counter.cObject 10.H4Counter.cObject.data = register:H4Counter 10.H4Counter.prioriCalc = intval 10.H3Counter > 20.fontTag = <h4{register:headerStyle}{register:headerClass}>{register:H1Counter}.{register:H2Counter}.{register:H3Counter}.{register:H4Counter}: |</h4> } lib.stdheader.10.5 > lib.stdheader.10.5 < lib.stdheader.10.4 lib.stdheader.10.5 { 10.H5Counter > 10.H5Counter.cObject < .10.H4Counter.cObject 10.H5Counter.cObject.data = register:H5Counter 10.H5Counter.prioriCalc = intval 10.H4Counter > 20.fontTag = <h5{register:headerStyle}{register:headerClass}>{register:H1Counter}.{register:H2Counter}.{register:H3Counter}.{register:H4Counter}.{register:H5Counter}: |</h5> }
This snippet was submitted by Peter Klein
This snippet is very similar to the following
Numbered SectionIndex based on header layout




1: Lorem ipsum dolor sit amet
.1: Lorem ipsum dolor sit amet 2
..1: Lorem ipsum dolor sit amet 3
1: Level 1
Empty lib.stdheader.98 and lib.stdheader.99, as the register gets restored there in newer TYPO3 versions. Obviously someone added this for a reason, but that reason is unclear.
Add comment