Adım Adım WordPress Eklenti Geliştirme Rehberi

WordPress, milyonlarca web sitesine güç veren esnek ve genişletilebilir bir içerik yönetim sistemidir. Bu esnekliği sağlayan en önemli bileşenlerden biri de eklentilerdir. Kendi ihtiyacınıza özel bir işlevsellik eklemek ya da topluluğa fayda sağlamak istiyorsanız, eklenti geliştirmek en doğru yoldur. Bu rehberde sıfırdan bir WordPress eklentisi geliştirmenin tüm adımlarını detaylı şekilde ele alacağız.

1. Eklenti Geliştirmeye Giriş

Eklentiler, WordPress’in sunduğu API’ler, hook’lar (actions & filters) ve PHP dilini kullanarak WordPress’in davranışlarını değiştiren veya genişleten yapılardır.

Neye İhtiyacınız Var?

  • Temel düzeyde PHP bilgisi
  • WordPress kurulumu (yerel ya da canlı sunucu)
  • Bir kod editörü (VS Code önerilir)

2. Eklenti Dosya Yapısını Oluşturma

WordPress eklentileri wp-content/plugins/ dizininde barındırılır.

Örnek Yapı:

/wp-content/plugins/
└── ornek-eklenti/
    ├── ornek-eklenti.php
    └── readme.txt

ornek-eklenti.php içeriği:

<?php
/**
 * Plugin Name: Örnek Eklenti
 * Description: Basit bir WordPress eklentisi.
 * Version: 1.0
 * Author: BayrakNET
 */

// Kodlar buraya gelecek

Bu bilgiler, WordPress’in eklentinizi tanıyabilmesi için gereklidir.

3. Hooks: WordPress’in Kalbini Kullanmak

WordPress’in olaylara müdahale etmenizi sağlayan iki ana yapısı vardır:

  • Actions: Belirli bir noktada bir şeyler yapmanızı sağlar.
  • Filters: Var olan verileri değiştirmenize izin verir.

Örnek:

add_action('wp_footer', 'ornek_footer_mesaji');

function ornek_footer_mesaji() {
    echo '<p style="text-align:center;">Teşekkürler, bu site bir örnek eklenti kullanıyor!</p>';
}

4. Admin Paneline Menü Eklemek

add_action('admin_menu', 'ornek_admin_menu');

function ornek_admin_menu() {
    add_menu_page(
        'Örnek Ayarlar',      // Sayfa başlığı
        'Örnek Eklenti',      // Menü adı
        'manage_options',     // Yetki
        'ornek-eklenti',      // Slug
        'ornek_ayarlar_sayfasi', // Callback
        'dashicons-admin-generic'
    );
}

function ornek_ayarlar_sayfasi() {
    echo '<h1>Örnek Eklenti Ayarları</h1>';
}

5. Ayar Sayfası ve Formlar

Ayar formu oluşturmak için Settings API kullanılır. Basit bir örnek:

function ornek_register_settings() {
    register_setting('ornek_ayarlar', 'ornek_mesaj');
    add_settings_section('ornek_section', '', null, 'ornek-eklenti');
    add_settings_field('ornek_mesaj', 'Mesaj:', 'ornek_mesaj_callback', 'ornek-eklenti', 'ornek_section');
}
add_action('admin_init', 'ornek_register_settings');

function ornek_mesaj_callback() {
    $value = get_option('ornek_mesaj');
    echo "<input type='text' name='ornek_mesaj' value='$value' />";
}

6. Güvenlik Önlemleri

WordPress eklentisi geliştirirken dikkat edilmesi gereken güvenlik konuları:

  • nonce ile form güvenliği
  • sanitize_text_field(), esc_html(), wp_verify_nonce() gibi fonksiyonlar kullanın
  • Doğrudan dosya erişimini engelleyin:
if (!defined('ABSPATH')) {
    exit; // Erişim engellendi
}

7. Eklentiyi Çok Dilli Hale Getirme (i18n)

Eklentinizin farklı dillere çevrilebilmesi için __() ve _e() fonksiyonları kullanılır:

_e('Bu bir örnek mesajdır.', 'ornek-eklenti');

Ve başlıkta metin alanında:

Text Domain: ornek-eklenti

8. Eklentinizi Test Etme ve Yayınlama

Test:

  • Hataları görmek için WP_DEBUG modunu etkinleştirin.
  • Farklı temalar ve eklentilerle uyumluluğunu test edin.

Yayınlama:

9. Gelişmiş Konular (Özetle)

  • OOP ile eklenti geliştirme: Sınıf tabanlı yapı ile daha modüler kod
  • AJAX kullanımı: Admin ya da frontend’de dinamik işlemler
  • Custom post type ve meta box entegrasyonu
  • REST API desteği

Değerlendirme

WordPress eklenti geliştirme süreci, hem teknik bilginizi geliştirir hem de geniş topluluğa katkı sağlar. Bu rehberle sıfırdan bir eklenti oluşturmanın temel adımlarını öğrendiniz. Geliştirmeye devam ettikçe, yapabileceklerinizin sınırlarını zorlayabilirsiniz.

WPW

WPW

İçerik yazarı, teknolojiye meraklı, grafik tasarımcı, sosyal medya ve seo danışmanı...

Articles: 869