WordPress Eklenti Geliştiricisi Olmak: Sıfırdan Bir’e Kapsamlı Rehber

2 dakika okuma.
2026-05-25
2026-06-03
2,735
Aşağıdaki bağlantılar üzerinden alışveriş yaptığınızda, sizin için ek bir maliyet olmadan komisyon kazanıyorum.

WordPress eklentileri, bir sitenin işlevlerini genişletmenin temelidir. İster belirli ihtiyaçlar için özel çözümler oluşturmak istersiniz, ister yaratıcılığınızı dünya çapındaki topluluklarla paylaşmak isteyin; eklenti geliştirme becerilerine hakim olmak, her ileri düzey WordPress kullanıcısı veya geliştiricisi için kaçınılmaz bir adımdır. Bu makale, temel kavramları anlamaktan başlayarak, adım adım ilk profesyonel seviye WordPress eklentinizin nasıl oluşturulacağını gösterecektir.

WordPress Eklenti Altyapısı

WordPress eklentilerinin temel yapısını ve organizasyon şeklini anlamak, geliştirmenin ilk adımıdır. Tipik bir eklenti, çekirdek PHP dosyalarından, kaynak kataloglarından (örneğin JavaScript, CSS) ve isteğe bağlı uluslararasılaştırma (çeviri) dosyalarından oluşur.

Öncelikle, her eklentinin bir ana dosyası olmalıdır ve bu dosyanın adı genellikle eklentinin dizin adıyla aynıdır. Örneğin: my-first-plugin.phpBu dosyanın en üstündeki eklenti başlığı yorumları çok önemlidir; çünkü WordPress sistemine eklentinin meta bilgilerini sağlarlar.

Tavsiye edilen okuma Sıfırdan başlamak: WordPress eklenti geliştirme altyapısı.

<?php
/**
 * Plugin Name:       我的第一个插件
 * Plugin URI:        https://example.com/my-first-plugin
 * Description:       这是一个演示插件开发的示例。
 * Version:           1.0.0
 * Author:            你的名字
 * License:           GPL v2 or later
 * Text Domain:       my-first-plugin
 */

Eklentinin kodu esas olarak WordPress’in kodlama standartlarına ve API’sine uygundur. Temel işlevsel mantık, özel sınıflar veya fonksiyonlar içinde kapsüllenmeli ve WordPress’in Eylem Kancaları (Action Hooks) ile Filtre Kancaları (Filter Hooks) aracılığıyla sistemle etkileşim kurmalıdır. Bu yapıyı takip etmek, kodun modülerliğini ve sürdürülebilirliğini sağlar.

UltaHost WordPress Sunucusu
30 gün iade garantisi, sınırsız bant genişliği ve veritabanı kullanımı, ücretsiz DDoS koruması; 3 yıllık abonelikte indirim (50%).

Çekirdek Geliştirme Teknolojileri ve API’ler

WordPress, eklenti geliştirme sürecini kolaylaştırmak için zengin bir API seti sunar. Bu API’leri ustaca kullanmak, verimli ve güvenli bir geliştirme için anahtardır.

Eylem kancalarını kullanarak işlevler ekleyin.

Eylem kancaları, belirli WordPress yürütme noktalarında kendi kodunuzu çalıştırmanıza olanak tanır. Örneğin, bunları kullanarak… admin_menu Kancalar, eklentilere arka plan yönetim panelinde bir ayar sayfası ekleyebilir.

add_action( 'admin_menu', 'myplugin_add_admin_menu' );
function myplugin_add_admin_menu() {
    add_menu_page(
        '我的插件设置',
        '我的插件',
        'manage_options',
        'myplugin-settings',
        'myplugin_settings_page_callback'
    );
}

İçeriği filtreler kullanarak değiştirin.

Filtre hook’ları, WordPress’un çalışması sırasında üretilen verileri değiştirmek için kullanılır. Örneğin, the_content Filtre, makale içeriğinin sonuna otomatik olarak bir metin parçası ekleyebilir.

add_filter( 'the_content', 'myplugin_append_footer_to_post' );
function myplugin_append_footer_to_post( $content ) {
    if ( is_single() ) {
        $footer_text = '<p>Okuduğunuz için teşekkür ederim! Bu metin, benim eklentim tarafından oluşturulmuştur.</p>';
        $content .= $footer_text;
    }
    return $content;
}

Kancalı sistemlerin yanı sıra, veri depolama API’leri de son derece önemlidir. Basit anahtar-değer çiftleri için uygun olan yöntemler kullanılmalıdır. add_option(), get_option(), update_option() Seri fonksiyonlar. Karmaşık sorgular gerektiren yapılandırılmış veriler için, özel veritabanı tabloları oluşturulmalı ve bunlar kullanılmalıdır. dbDelta() Fonksiyon, tablo yapısının doğru bir şekilde oluşturulmasını ve güncellenmesini sağlar.

Tavsiye edilen okuma WordPress çekirdek kancaları ve filtreleri hakkında daha fazla bilgi edinin: Temellerden pratik programlamaya kadar.

Eklenti Güvenliği İçin En İyi Uygulamalar

Güvenlik, eklenti geliştirme sürecinde göz ardı edilemeyecek bir unsurdur. Güvensiz bir eklenti, tüm web sitesinin bir güvenlik açığına neden olabilir.

Öncelikli ilke, tüm kullanıcı girdilerini doğrulamak, temizlemek ve escape işlemi yapmaktır. Kullanıcılardan veya veritabanından gelen verilere asla güvenmeyin. sanitize_text_field() Metin girdisini temizlemek için kullanın. absint() Bir değerin negatif olmayan bir tamsayı olduğundan emin olmak için kullanılır. wp_kses() Bazı güvenli HTML etiketlerinin kullanılmasına izin vermek için…

Verileri tarayıcıya gönderirken, mutlaka kod dönüşümü (escape) işlemi yapılmalıdır. esc_html() HTML içeriğini escape etmek.esc_attr() HTML özniteliklerini escape etmek.esc_url() URL’leri işleyin. SQL sorguları çalıştırırken mutlaka bunları doğru bir şekilde kullanın. $wpdb->prepare() Metotlar, SQL enjeksiyon saldırılarını önlemek için parametreli sorgular yapmak üzere tasarlanmıştır.

hosting.com Paylaşımlı Barındırma
AMD EPYC CPU'lar, NVMe SSD depolama ve LiteSpeed ile yüksek performans, 7/24, 7x7 uzman şirket içi destek, SSL, kaba kuvvet, kötü amaçlı yazılım ve DDoS koruması dahil gelişmiş güvenlik önlemleri, 73%'ye kadar tasarruf

Aynı zamanda, WordPress’in yerleşik yetenek kontrollerinden (Capability Checks) yararlanmalısınız. Herhangi bir yönetim işlemi gerçekleştirmeden önce bunları kullanın. current_user_can() Fonksiyon, mevcut kullanıcının ilgili yetkilere sahip olup olmadığını doğrular. Örneğin… current_user_can( 'edit_posts' )

Uluslararasılaştırma ve Yerelleştirme Desteği

Eklentilere çok dilli destek eklemek, kullanıcı kitlesini büyük ölçüde genişletebilir. WordPress, uluslararasılaştırma (i18n) ve yerelleştirme (l10n) işlemlerini gerçekleştirmek için GNU gettext teknoloji çerçevesini kullanır.

Eklenti için hazırlanan çeviri metni alanı

Uluslararasılaştırmanın ilk adımı, eklentinin ana dosyasının baş kısmındaki yorumlarda doğru ayarlamaları yapmaktır. Text DomainBu metin alanı benzersiz olmalıdır ve genellikle eklentinin “slug” adıyla aynı olur. Daha sonra, bunu kullanarak… __()_e() `translate` fonksiyonu, çevrilmeye ihtiyaç duyan tüm metinleri kapsar.

Tavsiye edilen okuma WordPress Eklenti Geliştirme Kılavuzu: Başlangıçtan Uzmanlığa Kadar Profesyonel Eklentiler Oluşturma

// 在代码中包裹可翻译字符串
$greeting = __( 'Hello, world!', 'my-first-plugin' );
_e( 'Settings saved.', 'my-first-plugin' );

Dil dosyasını oluşturun ve yükleyin.

Daha sonra, Poedit gibi araçları kullanarak eklentinin kaynak kodunu tarayıp gerekli dosyaları oluşturmanız gerekecek. .potDosya. Çevirmenler, bu şabeye göre ilgili dildeki çeviriyi oluştururlar. .po Dosyalar, sonunda makine tarafından okunabilir hale getirilmek üzere derlenir. .mo Dosya. Son olarak, eklenti başlatılırken kullanılır. load_plugin_textdomain() Bir fonksiyon, çeviri dosyalarını yüklemek için kullanılır.

Eklenti Yayın ve Bakım Süreci

Geliştirme işlemi tamamlandıktan sonra, eklentinin standartlara uygun bir şekilde yayınlanması ve sürekli olarak bakımının yapılması, eklentinin hayatta kalmasını belirler.

InterServer Paylaşımlı Barındırma
Paylaşımlı hosting aylık $2.50 USD, ilk ay $0.1 USD promosyon kodu tryinterserver, 461 bulut uygulaması komut dosyası, tek tıklamayla yükleme.

Yayınlamadan önce kapsamlı testler yapmak çok önemlidir; bu, işlevlerin ve uyumluluğun farklı PHP sürümleri, WordPress sürümleri ve çevrelerde test edilmesini içerir. Kodu bir sürüm kontrol sistemi (örneğin Git) kullanarak yönetin ve her stabil sürüm için bir etiket ekleyin. Ayrıca, açık ve anlaşılır dokümantasyonlar hazırlayın. readme.txt Dosyaların WordPress.org’un resmi dizinine yüklenmesi zorunludur ve belirli bir formata uymaları gerekmektedir.

Yayınlandıktan sonra, kullanıcı geri bildirimlerine aktif olarak yanıt verin ve raporlardaki güvenlik açıklarını zamanında giderin. Sürüm numaralarını yönetmek için semantik sürüm kontrolü standartlarını takip edin; böylece kullanıcılar her güncellemenin niteliğini net bir şekilde anlayabilirler. Resmi katalogda barındırılan eklentiler için, eklentinin ana dosyasındaki sürüm numarasını değiştirerek ve yeni etiketleri SVN deposuna yükleyerek yerleşik güncelleme mekanizmasını kullanabilirsiniz; bu sayede kullanıcılara güncellemeleri kolayca dağıtabilirsiniz.

Özetle.

WordPress eklenti geliştirme, yaratıcılığı gerçek işlevlere dönüştürme sürecidir. Bu süreç, geliştiricilerin sadece PHP’ye aşina olmalarını değil, aynı zamanda WordPress’in temel mimarisini ve felsefesini – yani eklentilerin sisteme nasıl entegre edileceğini, API’leri, güvenliği ve uluslararasılaştırma özelliklerini – derinlemesine anlamalarını gerektirir. Standart bir eklenti başlığı yazmaktan başlayarak, eylem (action) ve filtre (filter) mekanizmalarını kullanarak sisteme özel özellikler eklemeye, ve son olarak sıkı güvenlik kurallarına uymaya ve kullanıcı verilerini korumaya kadar her adım, güvenilir ve profesyonel eklentiler oluşturmanın temelini oluşturur. Bu makaledeki rehberliklere ve en iyi uygulamalara uyarak sağlam bir geliştirme temeli oluşturabilir ve zamanla kullanıcılar tarafından beğenilen, yüksek kaliteli eklentiler geliştirebilirsiniz.

Sıkça Sorulan Sorular.

WordPress eklentisi geliştirmek için hangi temel bilgilere ihtiyaç vardır?

PHP programlama dilinin temel bilgilerine sahip olmanız gerekmektedir, çünkü WordPress ve eklentileri esas olarak PHP ile yazılmıştır. Aynı zamanda, eklentilerin ön uç arayüzlerini ve etkileşimlerini oluşturmak için HTML, CSS ve JavaScript konularında temel bir bilgiye sahip olmak da çok önemlidir. Veri depolamayı yönetmek açısından MySQL veritabanının temel kavramlarına aşina olmak da faydalıdır.

Geliştirilmekte olan bir eklentiyi nasıl hata ayıklarım?

En etkili yöntem, WordPress’in hata ayıklama (debugging) modunu etkinleştirmektir. wp-config.php Dosyada, WP_DEBUG Sabit, olarak ayarlandı. trueBu, tüm PHP hatalarını, uyarılarını ve bildirimlerini ekranda gösterecektir. Aynı zamanda, error_log() Fonksiyonların hata ayıklama bilgilerini günlük dosyalarına yazması da yaygın olarak kullanılan bir yöntemdir. Karmaşık mantıklar için Xdebug gibi profesyonel hata ayıklama araçları kullanılabilir.

Eklentiler hangi klasörde saklanmalıdır?

Geliştirdiğiniz eklenti, WordPress kurulum dizininin altına yerleştirilmelidir. /wp-content/plugins/ Klasörün içinde. Her eklentinin kendi bağımsız bir alt dizini olmalıdır ve eklentinin ana PHP dosyası bu alt dizinde bulunmalıdır. Bu düzenleme yöntemi açık ve düzenlidir, yönetimi kolaylaştırır ve aynı zamanda WordPress topluluğunun kurallarına uygundur.

Kurulumumu resmi kataloga nasıl yayınlayabilirim?

Öncelikle, eklentinizin resmi geliştirme standartlarına ve kılavuzlarına tam olarak uyduğundan emin olmanız gerekiyor; bu standartlar güvenlik, kod kalitesi ve doğru uluslararasılaştırma (internationalization) işlemlerini kapsar. Daha sonra, WordPress.org’da bir geliştirici hesabı oluşturun ve eklentinizin kodunu, sizin için oluşturulan resmi kod deposuna SVN aracılığıyla gönderin. Gönderimden sonra, resmi ekip kodu inceleyecek ve onaylandığında eklentiniz kullanıcılar tarafından indirilebilecek şekilde eklenti dizininde yer alacaktır.