[977 Aufrufe]

5.13 Hooks: installer

In diesem Abschnitt beschäftigen wir uns mit den Hooks für den Installer.

Hook: sqlCompileCommands

Der sqlCompileCommands Hook wird aufgerufen, wenn Contao die Updates für die Datenbank zusammenstellt.

Registrierung

# /src/Ctocb/Example/Resources/config/services.yml
services:

  # Hooks
  Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
    public: true
    tags:
      - { name: contao.hook, hook: sqlCompileCommands, method: handleHook, priority: 1024 }

Klasse

<?php

namespace Ctocb\Example\Classes\Contao\Hooks;

class ExampleHook {

    public function handleHook(array $sql): array
    {
        // Modify the array of SQL statements

        return $sql;
    }
}

Parameter:

Parameter Typ Beschreibung
$sql array Array mit den SQL-Statements

Rückgabewert:

Typ Beschreibung
array Array mit den modifizierten SQL-Statements

Referenz im Contao Core: \Contao\InstallationBundle\Database\Installer#L164-L169

Hook: sqlGetFromDB

Der sqlGetFromDB Hook wird aufgerufen, wenn Contao die aktuelle Datenbankkonfiguration einließt.

Registrierung

# /src/Ctocb/Example/Resources/config/services.yml
services:

  # Hooks
  Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
    public: true
    tags:
      - { name: contao.hook, hook: sqlGetFromDB, method: handleHook, priority: 1024 }

Klasse

<?php

namespace Ctocb\Example\Classes\Contao\Hooks;

class ExampleHook {

    public function handleHook(array $sql): array
    {
        // Modify the array of SQL statements

        return $sql;
    }
}

Parameter:

Parameter Typ Beschreibung
$sql array Array mit den SQL-Statements

Rückgabewert:

Typ Beschreibung
array Array mit den modifizierten SQL-Statements

Referenz im Contao Core: \Contao\Database\Installer#L457-L465

Hook: sqlGetFromDca

Der sqlGetFromDca Hook wird aufgerufen, wenn Contao die aktuellen SQL-Definitinonen aus dem DCA einließt.

Registrierung

# /src/Ctocb/Example/Resources/config/services.yml
services:

  # Hooks
  Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
    public: true
    tags:
      - { name: contao.hook, hook: sqlGetFromDca, method: handleHook, priority: 1024 }

Klasse

<?php

namespace Ctocb\Example\Classes\Contao\Hooks;

class ExampleHook {

    public function handleHook(array $sql): array
    {
        // Modify the array of SQL statements

        return $sql;
    }
}

Parameter:

Parameter Typ Beschreibung
$sql array Array mit den SQL-Statements

Rückgabewert:

Typ Beschreibung
array Array mit den modifizierten SQL-Statements

Referenz im Contao Core: \Contao\Database\Installer#L296-L304

Hook: sqlGetFromFile

Der sqlGetFromFile Hook wird aufgerufen, wenn Contao die aktuellen SQL-Definitinonen aus den database.sql-Dateien einließt.

Registrierung

# /src/Ctocb/Example/Resources/config/services.yml
services:

  # Hooks
  Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
    public: true
    tags:
      - { name: contao.hook, hook: sqlGetFromFile, method: handleHook, priority: 1024 }

Klasse

<?php

namespace Ctocb\Example\Classes\Contao\Hooks;

class ExampleHook {

    public function handleHook(array $sql): array
    {
        // Modify the array of SQL statements

        return $sql;
    }
}

Parameter:

Parameter Typ Beschreibung
$sql array Array mit den SQL-Statements

Rückgabewert:

Typ Beschreibung
array Array mit den modifizierten SQL-Statements

Referenz im Contao Core: \Contao\Database\Installer#L328-L336