[Résolu] Tester l'existence d'un plugin ?
Bonjour toutes et tous.
Retour sur PluXml avec un nouveau compte (oubli des anciens identifiants).
Question simple : comment tester dans un fichier du thème si un plugin (par exemple plsMySearch) est activé ?
Un truc du genre : if (plugin machin activé) : affichage ceci else : affichage cela endif;
Merci !
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Après quelques "bidouilles", j'ai ça qui fonctionne :
Mais est-ce correct ? (Je ne suis pas développeur)
Merci.
Bonjour,
Tu ne testes pas la présence d'un plugin, mais juste si un hook est utilisé.
Et quand on explore le code PHP de PluXml, rien n'empêche à un plugin d'avoir un hook qui renvoie false.
Admettons que tu veux vérifier si le plugin MonPlugin est activé, il y a 2 méthodes pour le vérifier :
Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
Merci pour ta réponse mais je ne comprends pas vraiment tes explications...
Bonjour,
Il te propose deux façon de savoir si le plugin est actif ou non.
La plus simple à mon humble avis est celle qui teste si le plugin est présent.
Un plugin est une classe étendue de la class plxPlugin , si le plugin est activé, alors une classe au nom de ton plugin est présente/accessible et comme PluXml est bien fait, le non de classe est celui du répertoire du plugin (et de son fichier php du même nom), difficile alors de se tromper sur la classe que l'on cherche .
Pour savoir si plxMySearch est là, on regarde si une classe du même nom existe.
exemples à partir d'un fichier du thème.
L'autre façon est de chercher si ton plugin est actif dans le tableau
aPlugins
.Le tableau aPlugins contient toutes les infos des plugins actifs : le nom du plugin, le nom de son fichier où est la class, le chemin de son fichier de configuration, les hooks qu'il utilise, les valeurs des champs de configuration si il y en as, etc. Tu as là une petite mine d'informations.
Mauvaise idée: Tu peut aussi allez voir dans le fichier
/data/configuration/plugins.xml
si il est lister, mais au risque qu'il y ait un soucis avec le plugin (répertoire effacé , fichier corrompue ou une maj ratée,...) sans que tu sois passer par l'admin pour mettre à jour la liste des plugins actifs ou non. La mise à jour de ce fichier est manuelle, si un défaut existe avec un plugin, il ne se met pas à jour automatiquement et ce n'est pas parce qu’il figure dans la liste qu'il est forcement disponible.cdt
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
C'est plus clair.
Merci d'avoir pris le temps de détailler.
Du coup, j'ai opté pour "class_exists", y'a moins de choses bizarres à écrire donc moins d'erreurs potentielles !