Ein Leitfaden zur Typo3-Programmierung für Anfänger

TYPO3 programming can initially be a somewhat confusing challenge for beginners. However, with a few basic steps and the right understanding, newcomers can quickly achieve success. In this guide, we would like to introduce you to the first steps in TYPO3 programming and make it easier for you to get started.

TYPO3 vs. WordPress: Welches CMS ist das Richtige für Ihre Website?

TYPO3 and Wordpress are two of the most popular content management systems (CMS) on the market. Both offer a wide range of features and options for creating and managing websites. But which CMS is right for your website? In this comparison, we will take a closer look at the differences between TYPO3 and Wordpress to help you make the right decision.

Die Installation von TYPO3

TYPO3 is a content management system that is used by many companies worldwide. It is open-source software and can be downloaded free of charge. In this blog post, we will show you a step-by-step guide to installing TYPO3.

Warum eine Webseite mit TYPO3 erstellen?

TYPO3 is an open-source content management system, also known as a CMS. The system has been developed since 1998 and is now one of the most well-known systems for creating websites. It is a very powerful CMS that comes with many features that can significantly simplify the management and creation of websites. There are also several extensions that can expand the functionality of TYPO3.

Typo3 Updates

Typo3 CMS is a content management software that is available in several different languages and offers a wide range of features. Typo3 CMS enables users to set up and manage websites and applications without any prior programming knowledge. It is versatile, secure, and robust, but it is necessary to update the software regularly to ensure that you are always using the latest version. In this article, we explain how to effectively perform Typo3 CMS upgrades & updates and understand their benefits. We also explain common problems that can occur when performing Typo3 CMS upgrades and security updates and provide a conclusion on how users can always stay up to date.

Typo 3 Abschnittsverzeichnis für News-Records

Task at our web agency: We need a content element that automatically displays all sections, i.e. the content headings of the elements assigned to a news record. This element already exists for regular pages, but here we need to use the tx_news_related_news column, which references an entry in the tx_news_domain_model_news table for each content element.

 

TYPO3 Agentur Hacks

The challenge we faced at our agency was this: How can we create custom `cropVariants` (for `fal_media`) within the TYPO3 `news` extension (TYPO3 v9) to provide specific cropping templates or masks—such as aspect ratios of 12:1, 8:3, or others of our choice? The standard solution—like the one shown at https://github.com/georgringer/news/issues/371—did not work for us.

 

Menü mit Verweisen und Subtitle-Links

Task at our agency: In a menu of a TYPO3 installation (TYPO3 v9.5), the subtitles of the menu items should be linked to their corresponding pages, meaning that the link target of the subtitles should match the link target of the actual menu items. It would seem logical to set a typolink with parameter.data = field:uid. However, this only works for regular pages that do not point to other pages. For shortcut menu items, this would mean that the menu item itself would link to the correct destination/reference page after the menu has been built normally, while the subtitle would link to the page itself and therefore result in a 404 error.

 

Imagemagick Graphicsmagick

In a TYPO3 (TYPO3 9) installation at our agency, we encountered problems with image processing using ImageMagick. ImageMagick was installed via the software manager, and Ghostscript was installed as well. Nevertheless, in the backend, when checking Image Processing under "Environment->Image Processing", we received the message "Image generation failedImage generation failedImageMagick / GraphicsMagick handling is enabled, but the execute command returned an error. Please check your settings, especially ['GFX']['processor_path'] and ['GFX']['processor_path_lzw'] and ensure Ghostscript is installed on your server."

 

Frontend-Layout für Änderungen im Header

In a TYPO3 project at our agency, we wanted to display a different header for specific pages, i.e. a different logo, menu structure, etc. This can be implemented in just a few simple steps (using a website with TYPO3 v9.5.19 as an example): First, we add a custom layout in the Page TSconfig, e.g. with the following configuration:

 

Blog einrichten Typo3

In our web agency, we had to set up a blog system for TYPO3 for one of our clients. For this, we used a plugin. There are a few points that need to be taken into consideration during the process.

1. First, we need to install the blog extension (https://docs.typo3.org/p/t3g/blog/9.1/en-us/Index.html) under Extensions.

 

2. Next, we need to set up our blog. Under System > Blog > Setup a new Blog, the structure of our new blog was created. It should look like this:

 

 Partials der blog Extension überschreiben

If you want to override the partials of the TYPO3 <code>blog</code> extension within a TYPO3 website (v9.5), for example to customize the list view, it is sufficient to add the following configuration to the Template Setup and then create the corresponding partials (in our agency, the file was \fileadmin\templates\ext\blog\Partials\List\Post.html):

 

Core Update von 8 auf 9

At our web agency, we carried out an update from TYPO3 v8 to TYPO3 v9. The template used was based on the TYPO3 extension gridelements. After the update, however, some elements in the frontend were incorrectly positioned and styled. The same "mess" was visible in the website backend: the child elements had left their parent elements and were scattered around in the wrong order. The reason for this is that the colPos field in the tt_content table is modified during the core update. See also the GridElements documentation:

 

Core Update

At our agency, we carried out an update from TYPO3 v8 to TYPO3 v9. The template used was based on the TYPO3 extension gridelements. After the update, however, some elements in the website's frontend were styled incorrectly. In the website backend, it was apparent that the corresponding element layout was incorrectly configured under the "Appearance" tab. The reason for this is that the layout field in the tt_content table is modified during the core update.

 

No implementation found to handle given hash.

During the update of a TYPO3 website from version 8 to version 9 at our web agency, the following error occurred:

component="TYPO3.CMS.Core.Error.ProductionExceptionHandler": Core: Exception handler (WEB): Uncaught TYPO3 Exception #1234567890: No implementation found to handle given hash. This happens if the stored hash uses a mechanism not supported by current server. Follow the wiki link to fix this issue.

As a result, we were also unable to log in to the website's Install Tool via the URL /typo3/install.php. TYPO3 9 uses argon2i as its default password hashing method, but unfortunately, this was not available on the development server we were using. So, what can be done?

 

TYPO3 Introduction Package

To customize an existing template in TYPO3 based on the Introduction Package, it is usually sufficient to work within the \typo3conf\ext\bootstrap_package\Resources\Private\Templates\Page\ directory. For example, to customize the three-column template, you can modify the file \typo3conf\ext\bootstrap_package\Resources\Private\Templates\Page\Default3Columns.html. However, if you want the option to add additional row structures above or below the existing three-column layout, this needs to be configured in the backend layouts.

 

TYPO3 Lösung

If you are using the TYPO3 Bootstrap Introduction Package and want to extend the main menu to display 3 levels instead of the initial 2 levels, essentially only 2 areas need to be adjusted. First, in the setup.txt file (which can be found at \typo3conf\ext\bootstrap_package\Configuration\TypoScript\setup.txt), make sure that enough levels are available for display so that the MenuProcessor knows how many levels it should provide. Then, the corresponding template file needs to be extended to render the menu in the desired way. The Main.html file can be found at \typo3conf\ext\bootstrap_package\Resources\Private\Partials\Page\Navigation\.

 

Sprachen im Typo3

In the version of the TYPO3 Introduction Package that we installed, two languages were configured by default: Danish and English. These needed to be changed to German and English, with German serving as the default language.

To do this, select the “List” option in the backend and click on the root directory of the site (the parent directory above the option with the globe icon). This is where you can configure the website languages.