Grav - Crochets d'événement

Dans ce chapitre, nous étudierons Event Hooksdans Grav. Dans le chapitre Plugins que vous verrez, la logique du plugin a été incluse dans deux méthodes. Les méthodes sontonPluginsInitialized et onPageInitialized; ces méthodes sont similaires aux hooks d'événement. Pour en savoir plus et contrôler la puissance des plugins Grav, vous devez vérifier la disponibilité des hooks d'événement. Les hooks d'événement ont une relation directe avec Grav du début à la fin. Vous devez connaître l'ordre dans lequel les hooks sont appelés et ce qui est utilisable au moment de ces appels.

Le tableau suivant répertorie le noyau Grav event hooks qui sont activés lors du traitement d'une page.

N ° Sr. Description de l'évenement
1

onFatalException

Vous pouvez déclencher cet événement à tout moment, si PHPdonne une exception fatale. leProblem Le plugin l'utilise pour gérer l'affichage d'une liste d'explications complètes, expliquant pourquoi le Grav délivre l'erreur fatale.

2

onPluginsInitialized

C'est le premier événement de plugin utilisable dans Grav. Les objets suivants ont été introduits comme mentionné ci-dessous -

  • Uri
  • Config
  • Debugger
  • Cache
  • Plugins
3

onAssetsInitialized

Cela spécifie que le assets manager est chargé et prêt à être utilisé et géré.

4

onPageNotFound

Si vous avez trouvé une page inattendue, vous pouvez ignorer cet événement. Actuellement, le plugin d'erreur est utilisé pour spécifier un404 error page.

5

onPageInitialized

Ceci spécifie la page demandée par un URL qui est chargé dans l'objet Page.

6

onOutputGenerated

Ceci spécifie le processus de sortie par le Twig templatingmoteur. Actuellement, ce n'est qu'une chaîne deHTML.

sept

onOutputRendered

Il s'agit d'un processus de sortie, qui est envoyé à l'écran.

8

onShutdown

Il s'agit d'un événement nouveau et très puissant qui vous permet d'effectuer des actions. Ceci est fait après que Grav acompleted processinget la connexion au client est fermée. Cette action individuelle ne nécessite aucune interaction avec l'utilisateur, en conséquence peut affecter les performances. Il comprend le suivi des utilisateurs et le traitement des travaux.

9

onBeforeDownload

C'est un nouvel événement qui passesdans l'objet événement contenant un fichier. Il permet aux utilisateurs d'effectuer la journalisation, d'accorder et d'ignorer l'autorisation de télécharger le fichier mentionné.

Crochets d'événement Twig

Twig a sa propre collection de hooks d'événement à utiliser comme mentionné ci-dessous.

N ° Sr. Description de l'évenement
1

onTwigTemplatePaths

L'emplacement de base du chemin du modèle est défini sur le Twig object. Cet événement est utilisé pour ajouter d'autres emplacements où Twig recherchera des chemins de modèle.

2

onTwiglnitialized

Il initialize le moteur de création de modèles Twig.

3

onTwigExtensions

Il spécifie que les extensions de base de twig sont prêtes à être utilisées. Ce hook d'événement vous permet d'ajouter votre propre extension Twig.

4

onTwigPageVariables

Ce processus Twig vous permet une page directement, c'est à dire que vous pouvez localiser process:twig:trudans une page d'en-têtes YAML. Ici, vous pouvez ajouter toutes les variables à Twig et devraient être accessibles à twig pendant ce processus.

5

onTwigSiteVariables

Dans ce processus, vous verrez le modèle de site complet dans order wisepar les méthodes Twig. De plus, vous pouvez ajouter n'importe quelle variable à Twig pendant ce processus.

Crochets d'événement de collection

Le tableau suivant répertorie un hook d'événement de collection.

N ° Sr. Description de l'évenement
1

onCollectionProcessed

Dans cette section, une fois le processus terminé, vous pouvez control une collection.

Crochets d'événement de page

Le tableau suivant répertorie une collection de hooks d'événement de page.

N ° Sr. Description de l'évenement
1

onBuildPagesInitialized

Cet événement est utile pour les plugins pour contrôler le contenu et mettre en cache les résultats. Une fois cet événement activé, les pages seront recyclées. Cela se produit lorsque le cache aexpired ou besoins refreshing.

2

onBlueprintCreated

Cet événement facilite le traitement et la gestion des formulaires.

3

onPageContentRaw

Dans ce processus, lorsqu'une page est trouvée, headers sont fixes, mais contentne sera pas corrigé. Vous verrez que chaque page est déclenchée dans le système Grav. Si vous avez vidé le cache ou effacé le cache, cet événement se produit.

4

onPageProcessed

Une fois qu'une page est testedet corrigé, chaque page est rejetée dans le système Grav. Les performances n'ont pas d'importance dans ce cas, car elles ne seront pas lues sur une page mise en cache.

5

onPageContentProcessed

Vous pouvez voir que cet événement est ignoré, une fois que la technique content () de la page a corrigé le contenu de la page. Cet événement est utile dans le cas où vous souhaitez effectuer des actions sur le contenu post-corrigé mais assurez-vous que les résultats sontcached.

6

onFolderProcessed

Une fois par folderest testé et corrigé, chaque dossier est rejeté dans le système Grav. Les performances n'ont pas d'importance dans ce cas, car elles ne seront pas lues sur une page mise en cache.