- Katılım
- 21 May 2023
- Mesajlar
- 754
- Tepki
- 17
- Puan
- 18
Aynı kelime iki ayrı yerde karşınıza çıkıyor: sitenize kurduğunuz eklenti ile tarayıcınıza eklediğiniz uzantı. İkisi de "eklenti" diye anılıyor ve ikisi de aynı işi yapıyor: hazır bir yazılımın davranışını, o yazılıma dokunmadan genişletmek.
Aşağıda eklentinin içerik yönetim sistemindeki tanımını, kaç dosyadan oluşabildiğini, tarayıcı tarafındaki karşılığını ve bir uzantının sayfada neleri değiştirebildiğini resmî geliştirici belgelerine bakarak topluyoruz.
Site tarafındaki tanım
WordPress eklenti el kitabı tanımı tek cümlede veriyor: eklentiler, çekirdeğin işlevselliğini genişleten kod paketleri.
Yapısı da belirtilmiş: WordPress eklentileri PHP kodundan oluşuyor ve görsel, CSS ile JavaScript gibi başka varlıkları da içerebiliyor.
Belge işin mantığını da açıklıyor: kendi eklentinizi yaparak sistemi genişletiyorsunuz, yani sistemin hâlihazırda sunduğunun üzerine ek işlevsellik inşa ediyorsunuz.
Ölçek konusunda bir sınır konmamış. Verilen örnekler bir uçta sitedeki en yeni on yazının bağlantılarını gösteren küçük bir eklenti, diğer uçta e-posta bildirimleri, özel talep durumları ve müşteriye dönük bir portal içeren tam donanımlı bir destek talebi sistemi.
- Ne yapıyor: Çekirdek işlevselliği genişletiyor.
- Neden oluşuyor: PHP kodu; görsel, CSS ve JavaScript de içerebiliyor.
- Nereye ekliyor: Sistemin sunduğunun üzerine.
Kaç dosya gerekiyor?
Beklenenin aksine az. Belgeye göre çoğu eklenti birçok dosyadan oluşsa da, bir eklentinin gerçekte ihtiyacı olan tek şey başlığında belirli biçimde yazılmış bir belge bloğu bulunan tek bir ana dosya.
Belge somut bir örnek de veriyor: ilk eklentilerden biri olan Hello Dolly yalnızca 100 satır uzunluğunda ve yönetim panelinde ünlü şarkının sözlerini gösteriyor. Sözün nasıl biçimlendirileceğini denetlemek için PHP dosyasının içinde bir miktar CSS kullanılıyor.
Buradan çıkan pratik sonuç şu: eklentinin büyüklüğü yaptığı işe göre değişiyor, kurulum biçimi değişmiyor.
Ana dosyanın başlığındaki bu blok, sisteme eklentinin adını ve künyesini bildiren yer. Sistem bir klasörü eklenti olarak tanıyorsa, bunu oradaki bilgiden anlıyor.
Aynı mantık kaldırma tarafında da geçerli: eklentiyi devre dışı bıraktığınızda çekirdek yazılım değişmemiş olduğu için site çalışmaya devam ediyor, yalnız o eklentinin kattığı işlev kayboluyor.
Mağaza işlevini bir eklentinin nasıl üstlendiğini WooCommerce yazımızda görmüştünüz; oradaki yapı bu tanımın büyük ölçekli örneği.
Tarayıcı tarafındaki karşılığı
Aynı kavram tarayıcıda uzantı adıyla yaşıyor. MDN'in uzantı belgesi tanımı şöyle kuruyor: uzantı, tarayıcıya özellikler ve işlevler ekliyor.
Kullanılan teknolojiler de tanıdık: uzantılar HTML, CSS ve JavaScript ile yazılıyor.
Farkı ise erişim düzeyinde. Belgeye göre bir uzantı, bir web sayfasındaki JavaScript'in kullandığı web API'lerini kullanabiliyor, ama bunun yanında fazladan bir JavaScript API kümesine de erişebiliyor.
Bu fazladan küme taşınabilir de: WebExtensions API'leri başlıca tarayıcılar arasında büyük ölçüde uyumlu ve Firefox için yazılmış uzantılar çoğu durumda ya hiç değişiklik gerektirmeden ya da çok az değişiklikle diğer tarayıcılarda da çalışıyor.
Püf nokta' Alıntı:Eklenti, ana yazılımın kodunu değiştirmeden davranışını değiştiriyor; güncelleme geldiğinde ayakta kalmasının nedeni bu.
Uzantı sayfada neyi değiştirebiliyor?
MDN yetenekleri örneklerle sayıyor ve listenin özeti şu: uzantıda, bir web sayfasındaki kodla yapılabileceğinden çok daha fazlası yapılabiliyor.
Sayılan başlıklardan biri siteyi tamamlamak: uzantı aracılığıyla tarayıcı içinde ek özellikler ya da kendi sitenizden gelen bilgi sunmak.
İkincisi görünümü değiştirmek. Uzantılar web sayfalarının içeriğini işleyebiliyor; örneğin kullanıcıların ziyaret ettikleri her sayfaya arka plan olarak sevdikleri bir görseli eklemesine izin verebiliyor.
Üçüncüsü içerik eklemek ya da çıkarmak: rahatsız edici reklamları engellemek, bir sayfada ülke ya da şehir adı geçtiğinde seyahat rehberi göstermek veya sayfa içeriğini tutarlı bir okuma deneyimi için yeniden biçimlendirmek. Bunları yapabilmesinin nedeni de belirtilmiş: uzantılar sayfanın HTML ve CSS içeriğine erişip güncelleyebiliyor.
Sayfaya dışarıdan kod girmesinin risk tarafını XSS yazımızda anlatmıştık; uzantıya verilen izinlerin neden okunması gerektiği de aynı sebeple.
Eklentinin bağlandığı sistemin ne yaptığını ise CMS yazımızda toparlamıştık.
Sık Sorulan Sorular
Eklenti ne demek?
Bir yazılımın çekirdek işlevselliğini genişleten kod paketi; sistemin kendisine dokunmadan üzerine işlev ekliyor.
Eklenti neden oluşuyor?
WordPress tarafında PHP kodundan; görsel, CSS ve JavaScript gibi varlıklar da içerebiliyor.
Bir eklenti kaç dosya olmalı?
En az bir: başlığında belirli biçimde yazılmış bir belge bloğu bulunan tek bir ana dosya yeterli.
Uzantı ile eklenti aynı şey mi?
Kavram aynı, ortam farklı. Uzantı tarayıcıya özellik ekliyor ve HTML, CSS ile JavaScript kullanılarak yazılıyor.
Uzantı sayfayı değiştirebiliyor mu?
Evet. Sayfanın HTML ve CSS içeriğine erişip güncelleyebildiği için içerik ekleyebiliyor, çıkarabiliyor ya da yeniden biçimlendirebiliyor.
Özetle
Eklenti, hazır bir yazılıma dışarıdan işlev katan paket. Site tarafında çekirdeğin işlevselliğini genişleten kod paketi anlamına geliyor ve teknik olarak tek bir ana dosya yetiyor. Tarayıcı tarafında aynı fikir uzantı adıyla çalışıyor; web teknolojileriyle yazılıyor, fazladan API kümesine erişiyor ve sayfanın içeriğini değiştirebiliyor. İki tarafta da ortak nokta, ana yazılımın kodunun değişmeden kalması.
Sitenizde ya da tarayıcınızda kurulu eklentilerden kaçını son bir ayda gerçekten kullandınız?
Güncelleme: 4 Eylül 2026. WordPress Plugin Handbook ve MDN WebExtensions belgeleri kontrol edildi.
Dijital Dünyanıza Yön Veren Pusula