Le fichier Prepend.php fait partie du processus reconnu par le gestionnaire de modules, il est donc automatiquement pris en compte si il existe.
- Il est placé dans le sous dossier
src
du module, - Il contient une classe du nom de
Prepend
, - Il est dans l'espace de nom PHP
Dotclear\Plugin\monPlugin
ouDotclear\Theme\monTheme
,, - La classe doit étendre la classe Process,
- Seuls les méthodes
init()
etprocess()
sont utilisées,
Généralement cette classe est utilisée pour préparer des variables nécessaires au fonctionnement global du module ou pour ajouter des behaviors, à la fois coté admin et coté public. Si ces définitions sont propres à l'admin ou au public, il faut utiliser les fichiers Backend.php ou Frontend.php.
Exemple du fichier Prepend.php du plugin blogroll de la distribution :
<?php
declare(strict_types=1);
namespace Dotclear\Plugin\blogroll;
use dcCore;
use Dotclear\Core\Process;
class Prepend extends Process
{
public static function init(): bool
{
return self::status(My::checkContext(My::PREPEND));
}
public static function process(): bool
{
if (!self::status()) {
return false;
}
dcCore::app()->url->register('xbel', 'xbel', '^xbel(?:\/?)$', [FrontendUrl::class, 'xbel']);
return true;
}
}
Le contenu de ce document a été écrit suivant le code de la version 2.27 de Dotclear.
La discussion continue ailleurs
URL de rétrolien : https://dotclear.watch/trackback/24