Eklentinizi LS4 ile uyumlu hale getirin
From LimeSurvey Manual
Teknik değişiklikler
Yeni XML yapılandırma dosyası
LimeSurvey 4.0 sürümünden itibaren eklentilerin uygulamada çalışabilmesi için bir XML yapılandırma dosyasına ihtiyacı vardır.
Bunun nedeni, eklentinin yazarı, destek e-postası veya güncelleyici bilgileri gibi meta verilerin saklanabilmesidir.
Bu XML dosyası LimeSurvey 4'te zorunludur. Eklentinin kök dizininde bulunmalıdır. Daha fazla bilgi için eklenti geliştirme belgesindeki Eklentiler bölümüne bakın.
Örnek:

Yeni eklenti dizini
Eklenti dizini LimeSurvey 4'te değişmiştir. Güvenlik nedeniyle, yeni eklenti yöneticisi (Eklenti yükleyici) sayesinde eklenti dizini artık yükleme dizininde (/upload/plugins) bulunmaktadır. Manuel yüklemelerde, yazılımın hatalı çalışmasını önlemek için dosyalarınızı yeni dizine yüklemenizi öneririz.
Dizin eklentinizde sabit olarak yazılmışsa, yeni dizini değiştirdiğinizden veya eklediğinizden emin olun.
Örnek:

Yeni eklenti olayları
LS3'teki bazı eklenti olayları kullanımdan kaldırılmıştır. Eski eklenti olaylarını değiştirmek için LS4'te sunulan yeni eklenti olaylarını kullanın. Daha fazla bilgi için geliştirme kılavuzumuzdaki eklenti olayları sayfasına bakın.
Kullanımdan kaldırılan işlevler ve yöntemler
LimeSurvey 4'ün kod tabanı veya yapısı değiştiği için artık kullanılmayan birçok yöntem veya işlev vardır. Bu sorunu çözmek için önce config.php dosyasında hata ayıklama kipini etkinleştirmeniz, ardından eklenti sayfasına gitmeniz gerekir. Artık var olmayan tüm yöntemler hata sayfasında gösterilecektir.
Bazı yöntemler LS4'te yeniden adlandırılmıştır veya artık kullanılmamaktadır. Eklentinizin hem LS3 hem de LS4 ile çalıştığından emin olmak için, ihtiyaç duyduğunuz yöntemi çağırmadan önce LS sürümünü kontrol edin.
Örnek:

En iyi uygulamalar
SVG dosyalarından kaçının
Güvenlik (XSS) nedeniyle SVG dosyalarının yüklenmesi mümkün değildir. Eklenti yükleyici SVG dosyalarını yok sayar. Bunları PNG veya JPEG dosyalarıyla değiştirin. SVG dosyalarının yüklenmesi yalnızca kurulum dizinine ftp veya diğer sunucu araçlarıyla erişiminiz varsa mümkündür (Dosyaları kendi sorumluluğunuzda yükleyin).
Genel sabitlerden kaçının
Çekirdek uygulamanın veya diğer eklentilerin değişkenleriyle çakışabilecek „ROOT_PATH“ gibi genel sabitlerin kullanımından kaçının. Eklenti geliştirmede genel olarak genel sabit kullanmayın.
Ad alanlarını kullanın
Eklentinizde bir görevi birlikte yerine getiren sınıfları gruplayarak daha iyi bir düzen sağlamak için ad alanı kullanın. Bu sayede çekirdek uygulamada zaten kullanılan sınıfları kullanmaktan kaçınırsınız.
Örnek:

