Lors du développement d'un plugin, existe-t-il un moyen de déterminer automatiquement la version minimale de WordPress requise pour l'exécuter? Je veux m'assurer que l'en- Requires
tête est précis, mais vérifier manuellement chaque fois que j'appelle une nouvelle fonction de base est fastidieux et sujet aux erreurs.
Je pense qu'un script pourrait le comprendre assez facilement:
- Analysez tous les fichiers dans un plugin.
- Parse toutes les instanciations de classe et les appels de fonction en fonction de la
new foo( [...] )
,foo::bar( [...] )
,bar( [...] )
,call_user_func( [...] )
, etc syntaxe. - Analysez la source WP pour déterminer quand chacune de ces classes / fonctions a été ajoutée à WordPress, en utilisant la
@since
balise phpDoc. - Générez un rapport répertoriant chaque classe / fonction et la version qui a été ajoutée, ainsi que la première version de WordPress qui inclut toutes les classes / fonctions.
J'ai regardé autour de moi mais je n'ai rien trouvé de tel et je n'ai pas le temps de l'écrire moi-même. Quelqu'un connaît-il une solution existante?
Réponses:
J'ai trouvé une solution en tant que service automatisé sur http://wpseek.com/pluginfilecheck/
C'est exactement ce qui a été demandé, y compris la génération d'une liste de fonctions utilisées et une suggestion pour les commentaires de Plugin-Header.
la source
Mise à jour: ce n'est plus exact. Voir la réponse de carstenbach .
Eh bien, il semble que la réponse soit "Non, il n'y a pas de solution existante pour cela."
Si quelqu'un voulait en écrire un, cela pourrait être utile:
Je pense que le commentaire de Mark sur la construction de la fonctionnalité dans le référentiel WordPress.org est une très bonne idée, mais cela peut être quelque chose que la communauté doit créer en premier afin de prouver qu'elle est utile, avant que l'équipe principale n'envisage de l'ajouter.
la source
Eh bien, c'est plus un point de départ, mais il y a cette belle liste de fonctions WP et les versions qui ont été ajoutées / supprimées ici . Malheureusement, cela ne va que jusqu'à WP 3.0.1, mais si vous visez 3.0 comme base, cela vous aidera au moins - s'il n'est pas dans la liste, il a été ajouté plus tard. Vous voudrez peut-être envoyer un e-mail à Ozh et lui demander de mettre à jour la liste, et si l'un de nous obtient la supposition, quelqu'un peut créer un plugin pour vérifier (comme un vérificateur de dépréciation inverse ).
ETA: Per @mrwweb - Liste de crochet d'Adam Brown ! Actuel à 3.3 et remonte waaaaay à 1.2.1, que personne dans leur bon sens ne fonctionnerait plus (date de sortie le 6 octobre 2004).
la source
Je pense que la réponse réside dans les avis obsolètes - vous devriez développer avec WP_DEBUG true - que vous les affichiez ou les journalisiez est votre appel, mais WP vous avertira si vous utilisez une fonction obsolète.
Il serait possible d'analyser @since comme vous le dites, mais les outils ne peuvent vous emmener jusqu'ici - la familiarité avec la base de code et la vérification manuelle peut être la voie à suivre.
la source