Manual:Uzantılar
Uzantı MediaWiki'nin nasıl göründüğünü ve çalıştığını özelleştirmenize olanak tanır.
- Sistem hizmetlileri, yönettikleri MediaWiki kurulumlarına uzantıları yükleyebilir (veya kaldırabilir).
- Geliştiriciler yeni uzantılar yazabilir veya mevcut uzantılara katkıda bulunabilirler.
Uzantıları seçme
Paketlenmiş uzantılar
Birkaç uzantı standart olarak MediaWiki ile birlikte gelir.
Bu uzantıların genel olarak yüksek fayda sağlaması, verimli bir şekilde çalışması, kararlı olması, iyi yazılmış olması ve bilinen önemli güvenlik sorunlarının olmaması gerekir. Ayrıca MediaWiki'nin son sürümleriyle ve birbirleriyle uyumlu olmaları gerekir (yani bir uzantı diğerinin işlevlerini engellememelidir). Paketlenmiş bir uzantı, paketlenmiş oldukları sürece bir veya daha fazla başka uzantıya bağımlı olabilir.
Site hizmetlileri MediaWiki'yi kurarken veya yükseltirken bunları otomatik olarak alırlar. MediaWiki'yi yükselttiğinizde, tüm uzantı yükseltmeleri de otomatik olarak uygulanacaktır. Site hizmetlileri isterlerse bunlardan herhangi birini kaldırmayı tercih edebilirler.
Bu grupta hangi uzantıların yer alması gerektiği konusunda açık ve devam eden tartışmalar var. Paketlenecek ek uzantıları önerebilirsiniz. Geliştiriciler fikir birliğine vardıklarında uzantılar paket hâline getirilecek.
Bir uzantının işlevselliği MediaWiki çekirdeği ile birleştirilirse, bir alternatifle değiştirilirse veya çözülemeyen büyük güvenlik açıklarının keşfedilmesi gibi olası olmayan bir durumda, uzantı paketlemeden kaldırılabilir.
Uzantı tarama
Mevcut uzantıların tam aralığını görmek için Category:Tüm uzantılar veya Kategori:Kategoriye göre uzantılar sayfasına göz atın.
Yüklü uzantıları kontrol etme
MediaWiki örneğinde hangi uzantıların etkin olduğunu kontrol etmek için Special:Version sayfasına erişip, Yüklü uzantılar başlığına (#mw-version-ext bağlantı noktası) kadar aşağı kaydırabilirsiniz.
Örneğin, bu uzantılar bu vikiye yüklenmiştir ve bu uzantılar İngilizce Vikipedi'de etkindir.
Popüler uzantılar
WikiApiary, uzantıların kurulu olduğu vikileri sayar. Bu, gerçek yüklemeleri temsil ediyor ve yalnızca indirmeleri değil (yani vikinin API'lerini sorguluyor), aynı zamanda (2023 itibarıyla) tamamen güncel değil. Özel vikilere yapılan kurulumlar da hesaba katılmaz.
Bir uzantı yükleme
- Daha fazla bilgi için ayrıca Manual:Extensions/Installation and upgrade sayfasına bakın
MediaWiki, kurulum tamamlandıktan hemen sonra uzantıları kabul etmeye hazırdır. Bir uzantı eklemek için aşağıdaki adımları izleyin:
- Başlamadan önce
- Birçok uzantı, Unix komutlarını kullanarak kurulum için tasarlanmış talimatlar sağlar. Uzantı yardım sayfalarında listelenen bu komutları girmek için kabuk erişimine (SSH) ihtiyacınız vardır.
- Uzantınızı indirin
- Uzantı Dağıtıcısı en popüler uzantıların çoğunu seçmenize ve indirmenize yardımcı olur.
- Uzantılar genellikle modüler paketler halinde dağıtılır. Genellikle kendi
$IP/extensions/adreslerinin alt dizinlerine girerler. Wikimedia'da Git deposu depolanan uzantıların listesi git:mediawiki/extensions üzerinde bulunur. Bazı uzantılar sürüm kontrolü kullanmıyor ve önerilmez. - Bazı uzantılar paketler, Composer veya paket depolarında da mevcuttur.
- Kurulumdan önce README dosyasını okumanız önerilir. Genellikle yapılandırma hakkında önemli bilgiler içerir.
- Uzantınızı yükleyin.
LocalSettings.phpdosyasının sonuna şunu ekleyin:wfLoadExtension( 'ExtensionName' );
- Bu satır PHP yorumlayıcısının uzantı dosyasını okumasını ve böylece MediaWiki'ye erişilebilir hâle getirmesini sağlar.
- Bazı uzantılar bakım betikleriyle çakışabilir, örneğin doğrudan
$_SERVERdeğişkene erişirlerse (önerilmez). Bu durumda, bakım betiklerinin çalışmaya devam edebilmesi için koşullu ifadelere sarılabilirler. if ( !$wgCommandLineMode ) { wfLoadExtension ( 'ExtensionName' ); }
- importDump.php bakım betiği, yukarıdaki koşula dahil olan özelleştirilmiş ad alanlarını gerektiren herhangi bir uzantı için başarısız olacaktır, örneğin Extension:Semantic MediaWiki, Uzantı:Sayfa Formları.
- Uzantılar için gerekli izinlerin ayarlandığından emin olun!
- Bu kurulum prosedürü çoğu uzantı için yeterli olsa da, bazıları farklı bir kurulum prosedürü gerektirir. Ayrıntılar için uzantınızın belgelerine bakın.
LocalSettings.phpdosyasındaki yapılandırma değişkenlerini değiştirmek istiyorsanız, bunu uzantı dahil olmak üzere genellikle sonra yapmanız gerekir. Aksi takdirde uzantıda tanımlanan varsayılanlar ayarlarınızın üzerine yazılacaktır.
Bir uzantı güncelleme
Bazı uzantılar MediaWiki'yi her güncellediğinizde güncellenmesi gerekirken, bazıları birden fazla sürümle çalışır. Bir uzantının yeni bir sürümüne yükseltmek için:
- Uzantının yeni sürümünü indirin
extensions/ExtensionNamedizinindeki tüm uzantı dosyalarını yeni dosyalarla değiştirin.LocalSettings.phpdosyasında bulunan uzantı yapılandırmasını kaldırmayın- Eğer uzantı MediaWiki veritabanında değişiklik gerektiriyorsa, update.php bakım betiğini çalıştırmanız gerekecektir. Çoğu uzantı bu betiğin çalıştırılması gerekip gerekmediğini belirtir. (Betiği çalıştırmadan önce verilerinizin yedeğini alın). Eğer komut satırı erişiminiz yoksa web güncelleyicisini de kullanabilirsiniz.
Bir uzantıyı kaldırma
LocalSettings.php dosyasından kaldırmak için uzantı adını içeren satırı kaldırın:
wfLoadExtension( 'ExtensionName' );
- Ayrıca uzantının yapılandırmasına ait tüm satırları da kaldırmanız gerekir.
Uzantıları geliştirme
MediaWiki çekirdeği, uzantıların bir vikinin davranışını ve görünümünü değiştirmesine yönelik çeşitli yollar sağlar. Çeşitli uzantı noktaları, uzantılara özel bir sayfa görüntüleme veya bir API modülü tanımlama gibi özellikler ve işlevler ekleme esnekliği sağlar. Başlamak için uzantı geliştirme kılavuzuna bakın. Yeni bir uzantı yazmadan önce, mevcut bir uzantıya katkıda bulunmayı veya bakımı yapılmayan bir uzantıya yardım etmeyi düşünün.
Kullanıcılar ayrıca Phabricator'da genel bir istekte bulunabilir ve iyi fikrinizin bir geliştirici tarafından fark edilmesini umabilirler. https://phabricator.wikimedia.org/tag/mediawiki-extension-requests/ sayfasına bakın
Ayrıca bakınız
- Kategori:Uzantılar
- Template:Extension
- Manual:Developing extensions
- Manual:Translating extensions – Çeviri uzantıları hakkında bilgi.
- Special:ExtensionDistributor – Wikimedia sürüm kontrolünde en çok indirilen 15 uzantısının listesini içerir
- extloc – MediaWiki uzantıları Wikimedia üretiminde nereye dağıtılır?
- API:Siteinfo#Extensions
- Manual:Extending wiki markup
- Manual:Hooks
- Manual:Sihirli kelimeler
- Manual:Skins