[1709 Aufrufe]
Hook:
Hook:
5.22 Hooks: search
In diesem Abschnitt beschäftigen wir uns mit den Hooks für die Stylesheets.
Hook: compileDefinition
Der compileDefinition Hook wird aufgerufen, wenn aus dem internen CSS-Editor ein Stylesheet erstellt wird.
Dieser Hook ist veraltet und kann unter Contao 5 nicht mehr verwendet werden!
Registrierung
# /src/Ctocb/Example/Resources/config/services.yml
services:
# Hooks
Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
public: true
tags:
- { name: contao.hook, hook: compileDefinition, method: handleHook, priority: 1024 }
Klasse
<?php
namespace Ctocb\Example\Classes\Contao\Hooks;
class ExampleHook {
public function handleHook(array $row, bool $writeToFile, array $vars, array $parent): string
{
if (isset($row['border-radius'])) {
return "\nborder-radius:" . $arrRow['border-radius'] . ";";
}
return '';
}
}
Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
$row |
array |
Array mit den Daten der Definition aus tl_style_sheet |
$writeToFile |
bool |
Bei true wird die Definition in die CSS-Datei geschrieben |
$vars |
array |
CSS Variablen des Themes |
$parent |
array |
Elterndatensatz der Definition aus tl_style |
Rückgabewert:
Typ | Beschreibung |
---|---|
string |
String mit der überarbeiteten Definition |
Referenz im Contao Core: \Contao\StyleSheets#L930-L943
Hook: createDefinition
Der createDefinition Hook wird aufgerufen, wenn ein Stylesheet importiert wird.
Dieser Hook ist veraltet und kann unter Contao 5 nicht mehr verwendet werden!
Registrierung
# /src/Ctocb/Example/Resources/config/services.yml
services:
# Hooks
Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
public: true
tags:
- { name: contao.hook, hook: createDefinition, method: handleHook, priority: 1024 }
Klasse
<?php
namespace Ctocb\Example\Classes\Contao\Hooks;
class ExampleHook {
public function handleHook(string $key, string $value, string $definition, array &$dataSet): ?array
{
if ('border-radius' === $key) {
return ['border-radius' => $value];
}
return null;
}
}
Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
$key |
string |
Name der Css Eigenschaft |
$value |
string |
Wert der Css Eigenschaft |
$definition |
string |
String mit der gesamten Css Definition |
$dataSet |
array |
Datensatz der in die Datenbank eingefügt werden soll |
Rückgabewert:
Typ | Beschreibung |
---|---|
array oder null |
Array mit der Css Eigenschaft, die gespeichert werden soll, oder null |
Referenz im Contao Core: \Contao\StyleSheetsL2203-L2217