ALLES ÜBER generic_lib UND WIE ES AUF WEBSITES EINGESETZT WIRD

Untersuchte Extension

generic_lib

Installation

  1. generic_lib im Extensionmanager installieren.
  2. ggf. generic_lib im Extensionmanager konfigurieren
  3. auf der Konsole im Docroot folgendes ausführen
    • php typo3/cli_dispatch.phpsh extbase migrate:extension generic_lib 7.6.0 <- ggf. "7.6.0" mit der aktuelle generic_lib Version ersetzen
    • es werden alte Datenbankfelder auf die neuen Namen konvertiert
    • es wird die Backend-Benutzergruppe "Global" angelegt (wenn diese noch nicht existiert)
    • es wird <INCLUDE_TYPOSCRIPT: source="FILE:EXT:generic_lib/Configuration/TypoScript/Backend/UserTS/Global.ts"> im "TSconfig" Feld der Backend-Benutzergruppe "Global" hinzugefügt, wenn enableUserTS = 1

Impressum

Wird eine Seite im Backend zur Rootseite gemacht ("Als Anfang der Website benutzen"), so lässt sich für diese Seite im Tab "Allgemein" ein Impressum zuordnen. Die hier gepflegten Felder können nun im RTE sowie im FLUID genutzt werden.

RTE

Alle Felder des Impressum werden zu "setup.constants". Somit sind sie mittel ### Marker im RTE benutzbar. Verfügbare Felder sind:

  1. IMPRINT.COMPANY

  2. IMPRINT.CONTACT

  3. IMPRINT.COMPANY_POSITION

  4. IMPRINT.STREET

  5. IMPRINT.ZIP

  6. IMPRINT.CITY

  7. IMPRINT.COUNTRY

  8. IMPRINT.PHONE

  9. IMPRINT.MOBILE

  10. IMPRINT.FAX

  11. IMPRINT.EMAIL

  12. IMPRINT.WEB

  13. IMPRINT.FACEBOOK

  14. IMPRINT.XING

  15. IMPRINT.YOUTUBE

  16. IMPRINT.VIMEO

  17. IMPRINT.TAX_ID

  18. IMPRINT.REGISTER

  19. IMPRINT.DISTRICT_COURT

FLUID

Es kann auf alle Felder des Impressum mittels eines ViewHelpers zugegriffen werden.

{namespace genericlib=TRITUM\GenericLib\ViewHelpers}

Der Zugriff funktioniert folgendermaßen:

<genericlib:imprint field="company" />

Verfügbare Felder sind:

  1. company
  2. contact
  3. company_position
  4. street
  5. zip
  6. city
  7. country
  8. phone
  9. mobile
  10. fax
  11. email
  12. web
  13. facebook
  14. xing
  15. youtube
  16. vimeo
  17. tax_id
  18. register
  19. district_court

TYPO3_CONTEXT Settings

Installation

1) Add the following Rewrite statements to your .htaccess file after the RewriteBase statement or to your Apache webserver configuration.

RewriteCond %{HTTP_HOST} ^dev\.example\.com$
RewriteRule (.*) $1 [E=TYPO3_CONTEXT:Development]

2) Please create a file calles AdditionalConfiguration.php inside typo3conf and include this

<?

if (!defined('TYPO3_MODE')) {
    die('Access denied.');
}

$applicationContextPath = PATH_site . '/typo3conf/ext/generic_lib/Classes/InitializeContext.php';
if (file_exists($applicationContextPath)) {
    include($applicationContextPath);
}
unset($applicationContextPath);

Now you can add additional configuration files for each context e.g. AdditionalConfiguration.Production.php or AdditionalConfiguration.Production.Local.php ... Fill the files with stuff like that: $GLOBALS['TYPO3_CONF_VARS']['SYS']['displayErrors'] = '1';

ContentObject Errorhandling (TYPO3 7.x)

TYPO3 zeigt im Frontend einen "Oops ..." string an, wenn ein Contentobject nicht richtig gerendert werden kann. http://docs.typo3.org/typo3cms/TyposcriptReference/latest/Setup/Config/Index.html#contentobjectexceptionhandler

Damit wir auf unseren Testsystemen analysieren können, um welchen Fehler es sich handelt kann mit der Typoscriptanweisung config.contentObjectExceptionHandler = TRITUM\GenericLib\Core\Frontend\ContentObject\Exception\DebugExceptionHandler eine debug Klasse zur Fehlerbehandlung eingestellt werden. Nun sieht man einen Stacktrace.

TypoScript Conditions

TtContentCondition (7.x)

Mit dieser TypoScript Condition ist es möglich Spalten von tt_content abzufragen.
Folgendes Beispiel führt bestimmtes Backend-TypoScript nur aus, wenn sich das tt_content Element in Spalte 3 (Überschrift) befindet:

[TRITUM\GenericLib\Typoscript\TtContentCondition colPos = 3]
    TCEFORM.tt_content.header_layout.removeItems := addToList(2,3,4,5)
    TCAdefaults.tt_content.section_frame = 50
[else]
    TCEFORM.tt_content.header_layout.removeItems := addToList(1)
[global]

Aktuell funktioniert das ganze nur mit einzeln zu bearbeitenden Contentelementen. Das heißt: das ganze funktioniert NICHT bei IRRE Datensätzen.

Typo3VersionCondition

Mit dieser TypoScript Condition ist es möglich die aktuelle TYPO3 Version gegen einen
übergebenen Versionsstring zu vergleichen. Der Vergleicht verhält sich analog zur PHP Funktion version_compare.
Der erste Paramater ist der Vergleichsoperator, der zweite Paramater ist die Version welche gegenüber der
aktuellen TYPO3 Version verglichen werden soll.

Beispiel:

Aktelle TYPO3 Version = 7.6.0

Typo3VersionCondition > 7.6.0

liefert false

Typo3VersionCondition > 7.5.99

liefert true

Folgendes Typoscript funktioniert in TYPO3 6.x UND 7.x

[userFunc = typo3VersionCondition(>, 6.2)]
    ...
[end]

Folgendes Typoscript funktioniert NUR in 7.x

[TRITUM\GenericLib\Typoscript\Typo3VersionCondition > 7.6.0]
    ...
[end]

Benötigen Sie schnelle Hilfe mit dieser Extension? Unser Team von erfahrenen TYPO3-Entwicklern löst Probleme unkompliziert und zum Stundensatz.

Verteilung:GENERIC_LIB ist auf

0.02 % aller TYPO3 installiert.

  • 0.12 % aller TYPO3 7.6.x Installationen installiert
  • 25 % aller TYPO3 7.2.x Installationen installiert
  • 0.06 % aller TYPO3 6.1.x Installationen installiert

Aktualität:GENERIC_LIB ist auf dem neusten Stand (v.unknown) bei

100 % aller TYPO3 Installationen

  • 0 % aller TYPO3 9.5.x Installationen
  • 0 % aller TYPO3 9.3.x Installationen
  • 0 % aller TYPO3 9.2.x Installationen
  • 0 % aller TYPO3 8.7.x Installationen
  • 0.12 % aller TYPO3 7.6.x Installationen
  • 0 % aller TYPO3 7.5.x Installationen
  • 0 % aller TYPO3 7.4.x Installationen
  • 0 % aller TYPO3 7.3.x Installationen
  • 25 % aller TYPO3 7.2.x Installationen
  • 0 % aller TYPO3 7.1.x Installationen
  • 0 % aller TYPO3 7.0.x Installationen
  • 0 % aller TYPO3 6.2.x Installationen
  • 0.06 % aller TYPO3 6.1.x Installationen
  • 0 % aller TYPO3 6.0.x Installationen
  • 0 % aller TYPO3 5.0.x Installationen
  • 0 % aller TYPO3 4.7.x Installationen
  • 0 % aller TYPO3 4.6.x Installationen
  • 0 % aller TYPO3 4.5.x Installationen
  • 0 % aller TYPO3 4.4.x Installationen
  • 0 % aller TYPO3 4.3.x Installationen
  • 0 % aller TYPO3 4.2.x Installationen
  • 0 % aller TYPO3 4.1.x Installationen
  • 0 % aller TYPO3 4.0.x Installationen
  • 0 % aller TYPO3 3.5.x Installationen

PHP Version:GENERIC_LIB wird benutzt mit

  • 77.78 % PHP/7.0
  • 11.11 % PHP/5.6
  • 11.11 % PHP/5.5

responsive - image 4

Gosign-Responsive Index: TYPO3 Installationen nutzen GENERIC_LIB zu

  • 78 % wenn der Gosign-Responsive-Index zwischen 80 % und 100 % ist
  • 11 % wenn der Gosign-Responsive-Index zwischen 60 % und 80 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 40 % und 60 % ist
  • 11 % wenn der Gosign-Responsive-Index zwischen 20 % und 40 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 0 % und 20 % ist

speed test - image 5

Pagespeed: TYPO3 Installationen nutzen GENERIC_LIB zu

  • 0 % wenn der Pagespeed zwischen 80 % und 100 % ist
  • 22 % wenn der Pagespeed zwischen 60 % und 80 % ist
  • 78 % wenn der Pagespeed zwischen 40 % und 60 % ist
  • 0 % wenn der Pagespeed zwischen 20 % und 40 % ist
  • 0 % wenn der Pagespeed zwischen 0 % und 20 % ist


Stichprobe n=37948 von Gosign gecrawlte TYPO3-Seiten mit den Top-Level-Domains <.de>

Ran an die Resultate – unser Newsletter für Sie!

Damit Sie gleich Wind davon bekommen, wenn wir in unserem Magazin zu neuen Erkenntnissen kommen.