Gibt es eine Möglichkeit, beim Entwickeln eines Plugins automatisch die Mindestversion von WordPress zu ermitteln, die zum Ausführen erforderlich ist? Ich möchte sicherstellen, dass der Requires
Header korrekt ist, aber jedes Mal, wenn ich eine neue Kernfunktion aufrufe, manuell zu überprüfen, ist mühsam und fehleranfällig.
Ich denke, ein Skript könnte es leicht genug herausfinden:
- Scannen Sie alle Dateien in einem Plugin.
- Parsen alle Klasse instantiations und Funktionsaufrufe auf der Grundlage der
new foo( [...] )
,foo::bar( [...] )
,bar( [...] )
,call_user_func( [...] )
, etc Syntax. - Analysieren Sie die WP-Quelle, um mithilfe des
@since
phpDoc-Tags zu bestimmen, wann diese Klassen / Funktionen zu WordPress hinzugefügt wurden . - Erstellen Sie einen Bericht, in dem jede Klasse / Funktion und die hinzugefügte Version sowie die früheste Version von WordPress mit allen Klassen / Funktionen aufgelistet sind.
Ich habe mich umgesehen, konnte aber nichts Vergleichbares finden und habe keine Zeit, es selbst zu schreiben. Kennt jemand eine bestehende Lösung?
Antworten:
Ich habe eine Lösung als automatisierten Dienst über http://wpseek.com/pluginfilecheck/ gefunden.
Es macht genau das, was verlangt wurde, einschließlich der Erstellung einer Liste der verwendeten Funktionen und eines Vorschlags für die Plugin-Header-Kommentare.
quelle
Update: Dies ist nicht mehr korrekt. Siehe die Antwort von carstenbach .
Die Antwort scheint zu lauten: "Nein, dafür gibt es keine Lösung."
Wenn jemand eines schreiben möchte, könnte dies hilfreich sein:
Ich denke, Marks Kommentar zum Einbau des Features in das WordPress.org-Repository ist eine wirklich gute Idee, aber es könnte etwas sein, das die Community zuerst erstellen muss, um zu beweisen, dass es nützlich ist, bevor das Kernteam darüber nachdenken würde, es hinzuzufügen.
quelle
Nun, dies ist eher ein Ausgangspunkt, aber es gibt diese schöne Liste von WP-Funktionen und den Versionen, die hier hinzugefügt / entfernt wurden . Leider geht es nur bis zu WP 3.0.1, aber wenn Sie für 3.0 als Basis fotografieren, hilft es zumindest - wenn es nicht in der Liste ist, wurde es später hinzugefügt. Möglicherweise möchten Sie Ozh eine E-Mail senden und ihn bitten, die Liste zu aktualisieren. Wenn einer von uns den Verdacht hat, kann jemand ein Plugin erstellen, das überprüft werden soll (wie ein Reverse- Deprecation-Checker ).
ETA: Per @mrwweb - Adam Browns Hook-Liste ! Aktuell auf 3.3 und geht waaaaay zurück auf 1.2.1, auf die niemand mehr bei Verstand laufen würde (Veröffentlichungsdatum 6. Oktober 2004).
quelle
Ich denke, die Antwort liegt in den veralteten Hinweisen - Sie sollten mit WP_DEBUG true entwickeln -, ob Sie sie anzeigen oder protokollieren, ist Ihr Aufruf, aber WP benachrichtigt Sie, wenn Sie eine veraltete Funktion verwenden.
Es wäre möglich, @since zu analysieren, wie Sie sagen, aber die Tools können Sie nur so weit bringen - Vertrautheit mit der Codebasis und manuelle Überprüfung könnten der richtige Weg sein.
quelle