Skip to content

Commit bcb51e5

Browse files
[TASK] Update introduction (#1448)
Releases: main, 13.4, 12.4 Co-authored-by: lina.wolf <[email protected]>
1 parent 39663f4 commit bcb51e5

File tree

1 file changed

+41
-81
lines changed

1 file changed

+41
-81
lines changed
Lines changed: 41 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,104 +1,64 @@
1+
:navigation-title: Introduction
12
.. include:: /Includes.rst.txt
3+
.. _typoscript-syntax-typoscript-templates:
4+
.. _typoscript-syntax-typoscript-templates-usage:
5+
.. _introduction:
26

3-
.. _about:
4-
.. _introduction:
5-
.. _typoscript-syntax-typoscript-templates:
7+
============================
8+
Introduction into TypoScript
9+
============================
610

7-
============
8-
Introduction
9-
============
11+
TypoScript is a configuration language used to configure both the frontend
12+
output and the backend of a a TYPO3 web site.
1013

11-
What is to be rendered on a page in the frontend,
12-
the menu structure, how content objects are displayed, etc. can be
13-
defined with TypoScript - often it is used in
14-
combination with the Fluid templating engine.
14+
TypoScript is not a programming language but a means of configuring the
15+
website.
1516

16-
This document is a **reference**, used to lookup TypoScript templating
17-
:ref:`basic data types <data-types>`, :ref:`object types <cobject>`,
18-
:ref:`functions <functions>` and :ref:`conditions <conditions>`. This
19-
reference is not intended to give you a full introduction into the topic
20-
TypoScript.
17+
.. contents::
2118

19+
.. _introduction-frontend-typoscript:
2220

23-
What is TypoScript?
21+
Frontend TypoScript
2422
===================
2523

26-
TypoScript can have 2 meanings:
24+
Frontend TypoScript is mainly used to configure which data should be send to the
25+
Fluid templates.
2726

28-
* **TypoScript syntax** is used in TypoScript templates and in
29-
TSconfig
30-
* **TypoScript templates** are used to configure
31-
the TYPO3 frontend rendering.
27+
It can also be used to define settings send to Extbase plugins, metadata for
28+
a whole page etc.
3229

33-
Additionally, in TypoScript templates, you must differentiate between
30+
In the beginning of TYPO3, TypoScript was used as templating language. In modern
31+
project it is not common to do that anymore.
3432

35-
* TypoScript **constants** (using the TypoScript constant syntax)
36-
* and Typoscript **setup**
33+
For an introduction see
34+
`Getting started: A quick introduction into TypoScript <https://docs.typo3.org/permalink/t3tsref:guide>`_.
3735

38-
Though TypoScript does include "functions" and "objects" and "conditions"
39-
it is not a programming language. Think of it more as a configuration
40-
language. The results of the TypoScript setup are used to build a PHP
41-
array.
36+
.. _about-tsconfig:
4237

43-
Basically think of TypoScript as a means to "configure" the **frontend**,
44-
while TSconfig is used to configure the **backend** (with a few exceptions
45-
to this principle)
38+
Backend TypoScript / TSconfig
39+
=============================
4640

47-
Please read the following for an introduction:
41+
Backend TypoScript, also called TSconfig, can be used to configure the output
42+
of certain forms etc in the TYPO3 backend.
4843

49-
* :ref:`TypoScript Syntax <typoscript-syntax>`
50-
chapter for an introduction to the TypoScript
51-
syntax
52-
* :ref:`guide` for an introduction to TypoScript configuration
53-
* The chapter :ref:`using-and-setting` describes how to use, set
54-
and extend TypoScript.
44+
.. _about-page-tsconfig:
5545

46+
Page TSconfig
47+
-------------
5648

57-
.. _typoscript-syntax-typoscript-templates-usage:
49+
Page TSconfig can be made available globally, on a per site or per page level.
5850

59-
Templating methods in TYPO3
60-
===========================
51+
For the possibilities see the
52+
`Page TSconfig Reference <https://docs.typo3.org/permalink/t3tsref:pagetoplevelobjects>`_.
6153

54+
.. _about-user-tsconfig:
6255

63-
TypoScript templates are used to drive frontend rendering.
56+
User TSconfig
57+
-------------
6458

65-
A minimal amount of TypoScript will *always* be necessary to
66-
tell TYPO3 CMS which templating method to use.
67-
It could be any of the following.
68-
69-
Best practice:
70-
71-
- **Fluid templates:** Configure TYPO3 to use `Fluid <https://typo3.org/fluid>`__
72-
for templating. This allows to use external HTML templates, but
73-
with fluid-style variables with curly braces. A content object type
74-
:ref:`cobj-fluidtemplate` is available, which uses Fluid
75-
from inside TypoScript.
76-
77-
* See :ref:`t3sitepackage:start` for a complete walkthrough of creating a
78-
sitepackage, which is the basis for a custom theme for your site.
79-
* See :ref:`t3coreapi:adding-your-own-content-elements` for an
80-
introduction on how to create your own content element types using
81-
TypoScript :ref:`cobj-template`, Fluid and data processors.
82-
83-
Other methods:
84-
85-
86-
- **External Templating Engines:** Any other templating system can be
87-
used. It will be provided via an extension. In such a case TypoScript
88-
may be used to delegate the rendering to that system.
89-
90-
- **Custom PHP:** Configure TYPO3 to call your own PHP code which
91-
generates content in any way you may prefer. This might include using
92-
third party templating engines!
93-
94-
- **TS content objects:** Build the page entirely using TypoScript
95-
content objects. All these objects are highly configurable.
96-
97-
Outdated methods:
98-
99-
100-
- **HTML templates:** Configure TYPO3 CMS to facilitate external HTML-
101-
templates with markers and subparts using the :ref:`cobj-template`
102-
content object type. This method is considered outdated and no
103-
longer recommended.
59+
User TSconfig can be made available globally for certain user groups or certain
60+
users. It cannot be set for just one site or page. It can however override
61+
:ref:`about-page-tsconfig`.
10462

63+
For the possibilities see the
64+
`User TSconfig reference <https://docs.typo3.org/permalink/t3tsref:usertoplevelobjects>`_.

0 commit comments

Comments
 (0)