Bir eklenti için gereken minimum WordPress sürümünü otomatik olarak belirle?


22

Bir eklenti geliştirirken, onu çalıştırmak için gereken minimum WordPress sürümünü otomatik olarak belirlemenin bir yolu var mı? RequiresBaşlığın doğru olduğundan emin olmak istiyorum , ancak her yeni bir çekirdek işlevi çağırdığımda manuel olarak kontrol etmek sıkıcı ve hataya açık.

Bir betiğin yeterince kolay çözebileceğini düşünüyorum:

  1. Eklentideki tüm dosyaları tarayın.
  2. Dayalı tüm sınıf instantiations ve fonksiyon çağrıları Ayrıştırma new foo( [...] ), foo::bar( [...] ), bar( [...] ), call_user_func( [...] ), vb sözdizimi.
  3. @sincePhpDoc etiketi kullanılarak bu sınıfların / işlevlerin her birinin WordPress'e ne zaman eklendiğini belirlemek için WP kaynağını ayrıştırın .
  4. Her sınıfı / işlevi ve eklendiği sürümü listeleyen bir raporun yanı sıra, tüm sınıfları / işlevleri içeren en eski WordPress sürümü ile birlikte.

Etrafa baktım ama onun gibi bir şey bulamadım ve kendim yazmak için zamanım yok. Mevcut bir çözümü bilen var mı?



Bu iyi bir başlangıç ​​olur, gösterdiğiniz için teşekkürler :)
Ian Dunn

@IanDunn Buna bir çözüm bulabildiyseniz, lütfen paylaşın. :)
its_me

Henüz bir çözüm bulamadım.
Ian Dunn

2
Bu konuda ne kadar çok düşünürsem, o kadar çok WordPress'in bunu yapması ve depodaki tüm eklentilere karşı çalıştırması gerekiyor, böylece sürüm numarası sonsuza dek tüm eklentiler için doğru.
mrwweb

Yanıtlar:


14

Http://wpseek.com/pluginfilecheck/ adresinde otomatik bir hizmet olarak bir çözüm buldum

Aynen öyle, kullanılan işlevlerin listesini oluşturma ve Eklenti-Başlık yorumları için öneride bulunma için ne istendi.


Çok güzel, teşekkürler :) Bir web servisinden ziyade bir WordPress eklentisinin kendisi olsaydı daha uygun olacağını düşünüyorum ama hiç yoktan iyidir.
Ian Dunn

2
Maalesef, aynı zamanda 'dosya başına' - yani tüm eklentiyi yüklemeden. Ama yine de çok faydalı bir kaynak - harika bul!
Stephen Harris

2
Bu hizmet şimdi bir zip dosyası yüklemeyi destekliyor ve içindeki tüm dosyaları otomatik olarak tarayacak :)
Ian Dunn

Bu ( de.wpseek.com/pluginfilecheck ) veya eklenti statik analizinde başka bir alternatif eklemek için herhangi bir alternatif var mı? otomatik olarak her işlem üzerine diğer statik analizlerle birlikte bir rapor oluşturur.
learning_13

3

Güncelleme: Bu artık doğru değil. Carstenbach'ın cevabına bakınız .


Eh, cevap gibi görünüyor "Hayır, bunun için mevcut bir çözüm yok."

Biri bir tane yazmak isterse, bunlar yardımcı olabilir:

Mark'ın bu özelliği WordPress.org deposuna yerleştirme hakkındaki yorumunun gerçekten iyi bir fikir olduğunu düşünüyorum, ancak çekirdek ekibin eklemeyi düşünmeden önce, topluluğun ilk önce yaratacağı bir şey olduğunu kanıtlamak faydalı olabilir.


2

Eh, bu daha bir başlangıç ​​noktasıdır, ancak WP işlevlerinin ve buraya eklenmiş / kaldırılmış sürümlerin güzel bir listesi var . Ne yazık ki, yalnızca WP 3.0.1'e kadar çıkıyor, ancak 3.0 için temel olarak çekim yapıyorsanız en azından yardımcı olacaktır - listede değilse, daha sonra eklenmiştir. Ozh'a e-posta gönderip listeyi güncellemesini isteyebilirsin, ve eğer birimiz aldırış ederse birileri kontrol etmek için bir eklenti yapabilir (ters bir amortisör denetleyicisi gibi ).

ETA: @mrwweb Başına - Adam Brown'ın Kanca Listesi ! Akım 3.3 ve şimdi tekrar aklı başında kimse koşmayacak olan 1.2.1'e geri dönüyor (yayınlanma tarihi 6 Ekim 2004).


2
Adam Brown'ın kanca listesini versiyona göre ekleyeceğim (geri 1.2.1'e!).
mrwweb

Deprecation Checker eklentisine bağlantı yaptığınız için teşekkür ederiz, bu yazmaya zamanım olursa derlemeniz için bazı yararlı kodlar sağlayabilir.
Ian Dunn

WPSE kullanıcısı Brian Fegter'in harika bir eklentisi.
SickHippie

0

Bence cevabı onaylanmamış bildirimlerde yattığını düşünüyorum - WP_DEBUG true ile geliştirmelisiniz - onları görüntüleyip kaydetmemeniz sizin aramanızdır, ancak WP kullanımdan kaldırılmış bir işlev kullanırsanız size bildirecektir.

Söylediğiniz gibi @since ayrıştırmak mümkün olabilir, ancak araçlar sizi yalnızca şu ana kadar götürebilir - kod temeli ve manuel kontrol ile aşinalık devam etmenin yolu olabilir.


1
Sanırım sorunun tersini cevapladın. Soru şu anda desteklenmekte olan işlevler için ne kadar geri destek alacağını belirlemek istiyor (örneğin, eklentinizin kullandığı bir işlev 3.1'de tanıtıldı, böylece eklentiniz önceki sürümlerde çalışmaz, ancak bu işlev bir hata ya da uyarı vermez) çünkü şu anda desteklenmektedir.)
mrwweb

Haklısın, yorgun olduğum için bana hizmet et. Öyleyse önereceğim şey, onu son ana sürüme göre manuel olarak kontrol etmek ve bunu isteğe bağlı bir başlangıç ​​noktası olarak kullanmaktır, çünkü kullanıcıları WP'lerini güncel tutmaya teşvik etmek herkesin yararınadır. Bir başlangıç ​​noktası oluşturulduktan sonra, kabul edilmeyen işlevlerin ve yöntemlerin burada belirtilmesi gerektiğinden herhangi bir yeniden düzenlemenin yapılması gerektiğinden, herhangi bir yeniden düzenlemenin yapılması gerektiğine göre, onay mesajları büyük olasılıkla sürümün güncel kalmasını sağlamak için bakılacak en iyi yer olabilir.
Chris Cox

Wordpress.org/about/stats'a baktığımda, önceki sürümlerin istatistiksel olarak önemsiz olması nedeniyle 3.2'nin çekilmek için güzel bir sürüm olduğunu söyleyebilirim.
Chris Cox,

Fikirler için teşekkürler Chris, ama buradaki asıl amaç otomatik bir çözüm bulmaktı. Yine de, 3.2'den daha eski sürümler için istatistiksel olarak önemsiz olduğuna dair iyi bir noktaya değiniyorsunuz.
Ian Dunn

Sana bir anlaşma yapacağım - vazgeçip bir tane yazarsan bana haber ver, ben de bir tane yazmaya başlarsam haber veririm. Bu iyi bir fikir ve birinin araç kutusundaki yararlı bir araç olacaktır.
Chris Cox,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.