TYPO3

TYPO3 is a free content management framework for Web sites / Internet pages, which will be officially offered since October 2012 under the name of TYPO3 CMS. Originally TYPO3 was developed by Kasper Skårhøj. TYPO3 is based on the PHP scripting language. As database MySQL or MariaDB, PostgreSQL or Oracle but also can be used.

TYPO3 is constantly developed by two so-called " Core Development Team ." A team cares about the " TYPO3 CMS", the other to the more recent " TYPO3 Neos ". The trademarked brand TYPO3 since October 2012 also serves as home for a number of other products.

The name TYPO3 comes from the fact that Kasper Skårhøj in the development of TYPO3 by a typo (english "typing error", or " typo" ) lost part of his work. The number " 3" was the name finally appended after the third version was known by TYPO3 by their success as a kind of brand.

Numerous functions of TYPO3 can be integrated with extensions without a separate program code must be written. Currently, over 5000 extensions come mainly from foreign vendors and are available for free. Available include enhancements for news, shop systems or discussion forums. The system is consistently designed for multilingualism and is staffed by a user and developer community from around the world. TYPO3 belongs together with Drupal, Joomla and WordPress the most famous content management systems in the field of free software and is used especially often in the German language area.

  • 5.1 Important versions
  • TYPO3 5.2 Neos
  • 6.1 Different Types
  • 6.2 Installation and maintenance
  • 6.3 development
  • 6.4 Examples

Use

The TYPO3 Association estimates that TYPO3 CMS is used worldwide more than 500,000 times. TYPO3 provides average demands on the performance and configuration ability of a server used. The training time of a developer is according to experience several weeks to months, cared for an author / editor of a website via TYPO3 and operated, depending on the unlocked features / enhancements, a few minutes to several hours. A developer who wants to set up a website with TYPO3 must deal usually intensively with the metalanguage TypoScript.

In contrast to commercial software, there is at the TYPO3 products no support by the manufacturer or developer. The support takes place through the user community ( bug tracker, forums and News-/Mailinglisten ) and a relatively large number of agencies that have specialized in the use and support for TYPO3. Even companies have specialized in websites / web pages based on TYPO3 CMS to create, or website hosting with preinstalled TYPO3 CMS offer.

Operation

TYPO3 CMS is installed on a web server and used with a Web browser. In addition to a browser, no additional software is required for use. The use of TYPO3 is divided into three major areas: the creation of the website designs using templates, the configuration of TYPO3 TypoScript means and the input and editing of website content.

TYPO3 CMS consists of a backend that is used for maintenance of the website and a front end that represents the site itself.

In the backend, the site is managed, configured TYPO3, there are still content and edited. A WYSIWYG editor allows users without HTML knowledge to do editorial work. Alternatively, the content editing can be done directly via the frontend of the website. This option provides a faster entry into the system.

Function and architecture

Features include, among others, timing for showing and hiding of contents, a roles and legal system (User Management), a search for static and dynamic content, search engine friendly URLs, an automatic sitemap, multilingualism for both the backend and the more voice-enabled frontend. Further, through various add-on modules (called extensions) integrable functions, for example, a guestbook, a forum, writing and sending a newsletter or statistics for page views. Video, images, texts, tables, animations, and external data sources can be managed in TYPO3 CMS ( sometimes only with extra extensions).

Templates in which page layout and formats are defined to facilitate the presentation of content. Contents are freely configurable input masks entered, for example in the form of contained rich text editor that is leaning over a to common word processors, WYSIWYG - like surface features. An integrated image processing is available. The object manager allows it to scale graphic elements, rotate, add frames, etc., TYPO3 CMS creates a modified image file in the new format in conjunction with the image converter ImageMagick and GDLib.

TYPO3 CMS is controlled internally through various PHP arrays. They contain all the information necessary to create from the data stored in a database contents via TypoScript commands HTML code. In general, you can customize almost every issue and many backend settings to change the configuration in the array. The memory required by the web server during the term of PHP scripts is of importance.

The content and parameters are stored in a relational database and is available regardless of the template used in each case are available. This allows the appearance of a site theoretically only by exchange of the template to be completely changed without touching the contents. Likewise, the same content in different layouts or output formats can be presented (for example, XML or LaTeX).

While in previous versions, the MySQL database has been addressed directly, can now be selected with the optional Database Abstraction Layer DBAL between a number of standard SQL databases, including an open- source alternative PostgreSQL, Oracle as a commercial variant.

An integrated caching system stores results of previously defined database calls between. Thus, the CPU load is just at high-traffic Web sites / Internet pages lowered, reducing the number of database queries and the page in the end, delivered and displayed faster.

Design elements

Design and programming of websites with TYPO3 CMS is usually carried out on the following elements:

TypoScript

The output of content in the frontend is controlled primarily through the metalanguage TypoScript. Strictly speaking, a TypoScript configuration language: What is defined in TypoScript is parsed into a system-wide PHP array. This in turn controls which PHP functions are executed when the page is. This allows features and extensions are managed globally for the entire site with a few simple steps. TypoScript is object-oriented (with respect to the syntax).

Example:

In order to produce an output at all, at least the generation of a page object is necessary. With the following code, the formatted heading " Hello, world!" Is displayed:

Page = PAGE   page.10 = TEXT   page.10.value = Hello, world!   page.10.wrap =

| < / h2 > issue:

Hello, world Other important TypoScript objects are CONTENT to read content from the database and TEMPLATE to render an HTML template.

Speaking of TypoScript, one usually means the set in the TypoScript template configuration for the frontend output, but there are also back-end configurations (with a few exceptions) with the same syntax are listed. They are called User TSconfig ( settings for a backend user or user group ) and Page TSconfig ( settings for the backend that apply to individual pages and their sub pages) and are summarized under the term TSconfig.

Development

The spiritual father and former chief programmer of TYPO3 is the Dane Kasper Skårhøj. The development of the system is divided at present into the branches of TYPO3 CMS and TYPO3 Neos, which are led by Oliver Hader (CMS ), respectively Robert Lemke ( Neos ).

The user interface has been changed with versions 4.2 and 4.3, where the backend has been revised and should thus be more intuitive. As part of version 4.4 which was released on 22 June 2010, the design based on the results of the so-called User Experience Week ( T3UXW ) from the previous year has been improved again especially in terms of user friendliness. It was also with this version for the first time ( called Introduction Package) a demonstration web site comes that enables first-time users to make faster familiar with the functions of the system. With TYPO3 4.5 key editing forms have been restructured. In newer versions of the interface was further cleaned up and optimized inter alia for display on mobile devices.

As the development of version 5.0 was driven parallel to the 4.x branch in the form of a completely new development for several years, current major versions were released as part of the TYPO3 4.x Branch. The numbering of the versions deviated due to this peculiarity of the usual, what with outsiders gave the impression that the development of TYPO3 would stagnate for several years. In fact, however, several major versions with new features have been released since version 4.0 already. Within each sub - branches of the so-called " feature freeze " applies; it will therefore not add new functions with minor updates, but merely corrected errors and security vulnerabilities.

After more and more showed that the originally called TYPO3 5.0 planned successor is not suitable of its functions and the possible application areas ago as his successor, but rather constitutes a distinct product in addition to TYPO3, this development was decided in March 2012, and by another to make clear name: The working title of TYPO3 5 "Phoenix" was chosen. The official name is now " TYPO3 Neos ". To avoid confusion in the designation of the following TYPO3 releases, followed TYPO3 4.7 as the next version will not TYPO3 5.0, but directly TYPO3 6.0. TYPO3 Neos is independently come as version 1.0 to market, the version number 5 will be completely removed from the release cycle of the TYPO3 project.

Important versions

TYPO3 Neos

In 2006, a project that had the goal to publish with the TYPO3 version 5.0, a complete, updated new development of TYPO3 began. The project was started by the core developer Robert Lemke and support after a few months of Karsten Dambekalns. Since 2007, Lemke and Dambekalns work full time on the development.

The TYPO3 version 5.0 was later renamed in TYPO3 Phoenix. The project was originally intended as a refactoring of the core of the then existing TYPO3 version 4 and the introduction of new features and standards. To create a future-proof basis for further TYPO3 versions after version 4: The overall objective.

The core of the new version should in future be constructed entirely according to modern MVC principles. However, it soon became clear that this new approach would require extensive changes that would ultimately jeopardize the stability of TYPO3. It was therefore decided to separate for the new version of TYPO3 whole of the old code base that is rooted in the beginnings of TYPO3 and was partially non-object- oriented.

In addition to the new version of TYPO3 from these efforts was also the software framework TYPO3 flow, which was released in June 2009 with the first alpha version under the name of FLOW3. TYPO3 Flow is from today's perspective the foundation of TYPO3 Neos.

In early October 2012, the developers of TYPO3 agreed to introduce a new naming concept for TYPO3 versions and related projects. The version 4.x branch, which was previously called simply TYPO3, it was renamed immediately in TYPO3 CMS; And the newly developed from scratch TYPO3 version is now ' designated ' as TYPO3 Neos. In addition, the Framework FLOW3 TYPO3 operates as a flow.

The uniform naming, it was possible to identify the historical development for the future clearly and organize. The term TYPO3 engaged as an umbrella brand clearly visible in the foreground and provides direction for all projects and versions of TYPO3.

In October 2012, the TYPO3 Association released a first alpha version. The final version 1.0 was released on 10 December 2013.

The advantage of TYPO3 Neos is that the user can edit content in a "live " view of the site and does not get as usual provided a uniform interface for editing the content in the backend. Due to the design of the framework, it is not yet possible to integrate plugins as content items, as with other TYPO3 systems because the extensions of the CMS on the new ones are " TYPO 2.0 " inserted by code.

TYPO3 Neos plugins are full TYPO3 -flow applications that are integrated as plugins. Pages and their contents are as a hierarchical tree (see Document Object Model ) constructed. Content elements are easily configurable and extensible, so no more custom plug-ins are necessary for many applications compared to TYPO3 CMS, but the configuration of your own content elements is sufficient.

TYPO3 Neos 's approach is completely separate configuration and data. Data end up in the database for the configuration created Neos per appearance a TYPO3 -flow packet of type " sites" and sets the configuration from it. This allows the configuration page to manage with a version control software and easily reuse, while coming for the database other tools used. This led among early Neos prospects to confusion, as Neos had already reached a high level functional, in the backend area by most of the functionality but nothing was to be seen.

Extensions

With the help of extensions, the user can extend the functionality of TYPO3 CMS or modify its behavior. In this case, these independent parts of the program can make changes in virtually all areas, including where they ( for example, to display a message system ) introduce new content elements, the backend to add a new module or influence the login process.

Different Types

Some extensions are the official TYPO3 CMS version with already because they are very often needed, or even for the operation are required. These extensions are called Extensions system. The bulk of the expansion lies in the TER (TYPO3 Extension Repository), a central server from which can be downloaded free extensions. These extensions are called either TER or Local Extensions Extensions.

Another distinction illuminates the nature of the functionality of the extension and divides them into so-called categories. An extension may qualify for multiple categories at once, so it is up to the developer to decide which category the primary purpose of the expansion best describes. The categories are as follows:

  • Backend: The extension affects the behavior of the backend without necessarily introducing a new module. Example: A WYSIWYG editor
  • Backend Modules: The expansion introduces a new backend module that offers new management features. Example: Integration phpMyAdmin as a backend module
  • Frontend: The extension affects the rendering of the front end, without necessarily introduce a new content item. Example: Search engine friendly URLs
  • Frontend Plugin: The expansion introduces a new content item, often display also introduced by this extension data structures. For example, a messaging system
  • Miscellaneous: The extension can not be sorted into one of the other categories.
  • Services: The extension replaces an existing service. Example: OpenID as login mechanism

Installation and maintenance

Extensions are installed in the back end using the extension manager that can directly connect to the TER to download the extension. It manages any dependencies, such as giving points to a lack of second extension that is required to operate a first -to-install extension, or by preventing the uninstall an extension when other installed extensions are based on this. The user can also view available updates to installed extensions and install them directly.

Development

It is recommended to use the TYPO3 extension " Kickstarter ", with a basic framework for the desired functions can be created automatically. Depending on your needs, you can use it to select frontend or backend extensions. The appearance of the forms thus becomes part of the configuration array TCA. The expansion created contains files with fixed names that are called automatically, for example ext_localconf.php, ext_tables.sql and ext_emconf.php. The programmer must program only single PHP functions. When you install the extension TYPO3 automatically checks whether the requirements of the extension are met ( needed packages / version, etc. ).

The PHP source code that the syntax of PHP version 4 and from TYPO3 version 4.2 at least PHP 5.2 requires to TYPO3 version 4.1, is usually from files, each containing a plug- in class. The programming is object-oriented, depending on the author or you can use the classes only in terms of modules. Each class file contains an inclusion of a so-called XCLASS at the end. These can be defined by extension developers with a specific naming scheme itself and should be derived from the original class. They are always used instead of the original class. However, it is recommended to use instead of XCLASS hooks. Thus, an existing function via the function call to one or more other functions within TYPO3 extensions will be made ​​arbitrarily extensible.

Since version 4.3, it is possible to program enhancements based on new techniques that have been ported from TYPO3 flow. These include, among others, the Model-View- Controller framework, which has been integrated in TYPO3 4.3 in the extbase extension, and the template engine fluid.

Examples

Enhancements to the variety of functions can be integrated modular. Some of these are:

  • Messaging systems - representation and management news
  • Alternative Template-Systeme/-Engines
  • Alternative rich text or WYSIWYG editors
  • Digital Asset Management for storage and management of any digital content
  • Data on countries, languages ​​and currencies
  • Shop Systems
  • User registration
  • Guest Books
  • Forums
  • Picture Galleries
  • Generating human readable URLs
  • Advanced, custom mail forms
  • Visitor behavior on websites
  • Search functions

Large TYPO3 CMS projects

Many large sites, especially many German -language, such as the website of the State of Saxony- Anhalt, the site of the party Alliance 90/The Greens, the site of the Technical University of Berlin or the website of the German Football Association are based on the TYPO3 CMS.

Criticism

Critics point to the complexity of the system, and the associated long learning curve for administrators. The source code has grown by mid-2012 to over 450,000 lines, a result from the fact that the system is perceived as cumbersome in some areas.

Certification

Since the TYPO3 conference 2008, there is the opportunity to be officially certified. To this end, official exams are taken in different cities around the world on specific dates. It begins with this certification as a so-called "Certified TYPO3 Integrator", perform the following tasks in the creation of templates, the configuration of extensions and the allocation of user rights. However, it does not install TYPO3 CMS itself on a server and developed itself, no new enhancements. Certificates are also planning for another object fields. The need for a certification option for TYPO3 CMS reasoned Dominic Brander, head of the TYPO3 certification group, with the increasing public awareness of free software and the concomitant use of agencies and freelancers. Many, however, lacked the necessary experience in dealing with it, which is why the results obtained had often failed to meet the requirements of the customer. Brander: "then For the client usually does not appear that the quality issues have nothing to do with the software but with the implementers. So then was too often TYPO3 CMS known as bad just because inexperienced agencies led to unsatisfactory solutions. This then is the idea of ​​certification and our claim, TYPO3 certification helps to Improve the quality of TYPO3 -centered services ' emerged. "By the end of August 2012 could certifications for a particular TYPO3 version (eg TYPO3 4.x) obtained be, which had an unlimited validity. Since 1 September 2012, issued certifications are valid for 36 months, but for no longer limited to a particular version. This will increase the value of the qualification as a Certified Integrator: Both the integrator and its customers can now be sure that the check within a certain period has been stored and the performance record is accordingly date. The fact that the certificates are valid for all TYPO3 versions, the rapid change that is not taken into account in TYPO3. A solution to this problem has yet to be developed.

The tests have been carried out each in paper form at different locations, this stand since 2013 anytime and anywhere via the Test Center of Pearson VUE available.

788067
de