comment savoir si un plugin est actif ?

Bonjour,

En SPIP 4.4.13 :

Je cherche a trouver en bdd **Tous les plugins actifs **,

j’ai pas trouver si l’information se trouver dans :
spip_meta. ou dans spip_plugins

est ce que si le plugin est actif , on trouvera l’information dans une colonne qui contient 'oui' ou 'non'.

merci pour l’information, parce-que la je sèche

Cordialement

Il faut utiliser le filtre/la fonction php test_plugin_actif

?exec=mutualisation fait ça là : exec/mutualisation.php · master · spip-contrib-extensions / mutualisation · GitLab

Merci pour les pistes

Il faut donc que mon script récupère les plugins depuis meta_cache.php, comme dans le code SPIP mutualisation.

j’avoue que pour l’instant c’est infructueux, ma liste reste desesperement vide

On récupère les plugins depuis meta_cache.php

php -r '
$meta=@unserialize(file_get_contents($argv[1]));
if($meta && isset($meta["plugin"]) && is_array($meta["plugin"])){
    foreach($meta["plugin"] as $p=>$v){
        if(strtolower($p)!="php" && substr(strtolower($p),0,4)!="php:"){
            echo $p . "|" . $argv[2] . "\n";
        }
    }
}
' "$META" "$site_name" >> "$TMP"

done

si tu précise un peu le besoin final, on pourrait t’orienter. Parce que si tu veux liste TOUT les plugins actifs c’est différent de savoir si TEL plugin est actif.

Et si tu veux lister ttout les plugin actifs: balise #PLUGIN en squelette ou bien liste_plugin_actifs() en php…

alors je me suis réaliser un petit script maison qui parcours la mutualisation et envoie un mail, chaque site dans le mail est représenté sous la forme

donc avec les plugins installé dans le répertoire /plugin/auto.

avec le code

# Plugins installés PLUGIN_DIR="$s/plugins/auto" TOTAL_PLUGIN=$(find "$PLUGIN_DIR" -mindepth 1 -maxdepth 1 -type d 2>/dev/null | wc -l) SITE_PLUGIN_COUNT[$site]=$TOTAL_PLUGIN for plugin in $(ls "$PLUGIN_DIR" 2>/dev/null | sort); do [ -d "$PLUGIN_DIR/$plugin" ] || continue echo "$plugin|$site" >> "$TMP" done

seulement j’aurais voulu les plugins actifs, et la je voie pas trop comment faire , car toute mes tentative me refuse de lire meta_cache.php .

et même avec Permet d'activer des plugins d'un site SPIP depuis la ligne de commande. Lancer le script depuis la racine du site ou depuis ecrire/ ou plugins/ · GitHub

j’arrive a rien donc je suis preneur de piste

Tu as la liste dans le plugins mutualisation non ?

tout a fait, mais ce n’est pas ma question :wink:
information qu’on peu lire ici : Bénéficier de la mutualisation du code de SPIP - Pyrat.net – Création de sites Internet

Ma question est :
Je souhaite récupéré les plugins actifs afin d’ administrer une plateforme SPIP mutualisée.

envoyé le mail a un groupe pour permettre de voir rapidement :

  • quels sites prennent trop de disque
  • quels plugins sont utilisés plugins actifs
  • quels plugins sont inutiles
  • quels plugins sont critiques (présents partout)
  • la santé globale du serveur

Il date un peu cet article (couf couf)

Depuis, le tableau de mutualisation facile liste les plugins installés sur un site, et la liste des sites utilisant tel plugin en dessous. Et même la liste des plugins inutilisés.

tout a fait mais comme dit plus haut a pierre , c’est pas la question du fil

d’ailleurs si nécessaire je peu poster le code

Justement pourquoi ne se baser sur le plugins mutu pour faire ton projet ?

Tu peu m’en dire plus ?
a ce jour j’arrive a envoyer le mail mais malheureusement qu’avec les plugins téléchargé (puisque je balaye plugins/auto) et non pas uniquement ceux actif.