Aller au contenu principal
Version: Next

Plugin

Représente une extension WordPress afin de pouvoir récupérer facilement des informations et surtout interagir avec elle, notamment dans la page des extensions.

Cette façade est notamment utilisée dans le fichier principal du plugin pour définir un updater ou des icônes. C'est également à cet endroit que l'on va utiliser les méthodes : onActivation, onCompletedUpdate par exemple.

plugins/my-plugin.php
$plugin = $kernel->getPlugin(__DIR__);
$plugin
    ->defineUpdater(new Gitlab(
        repo: 'chemin/du/repo',
        accessToken: "mon_access_token", // Si le projet est privé
        url: "https://selfhosted.gitlab.com" // Si votre gitlab est auto-hébergé.
    ));

Méthodes

updateRowMeta(string|callable $html)

Ajoute du HTML dans la ligne du plugin dans la liste des extensions. S'il s'agit d'une fonction qui est passée en paramètre, elle doit retourner une chaîne de caractère.

Désactive la possibilité de désactiver le plugin.

manageActionLinks(string $actionName, callable $actionCallback, bool $unset = false)

Gère les liens d'actions, notamment pour ajouter des liens personnalisés.

addPluginNotice(string|callable $content, string $type = 'warning')

Ajoute une alerte notice au sein de la ligne de l'extension dans la liste.

setIcons(array $icons)

Définit une icône pour le plugin. Clés acceptées : 1x, 2x, svg. Chacune prend l'URL vers l'icône en valeur.

Depuis 0.7.x, la propriété interne des icônes est initialisée par défaut ([]), ce qui évite les erreurs lorsque setIcons() n'est pas appelé.

onActivation(callable $callback)

Exécute du code après l'activation du plugin.

onDeactivation(callable $callback)

Exécute du code après la désactivation du plugin.

onCompletedUpdate(callable $callback)

Exécute du code après la mise à jour du plugin.

Depuis 0.7.2, le callback n'est exécuté que si ce plugin précis fait partie des extensions mises à jour (options['plugins']). Cela évite les faux positifs lors de mises à jour d'autres plugins.

defineUpdater(GitInterface $git)

Définit un updater pour le plugin. Pour le moment, uniquement Gitlab existe.