Diğer eğitim projelerimize baktınız mı ? KolayBiyoloji.com KolayFizik.com KolayMatematik.com
WordPress Tema Customizer ile Tema Ayar Paneli Oluşturmak
Bu bölümde, kullanıcıların temanızda renk seçmesi, logo yüklemesi, footer metni düzenlemesi gibi işlemleri admin panelinden kolayca yapabilmesi için bir Customizer paneli oluşturacağız.
🧩 Neden Customizer?
- Canlı önizleme ile kullanıcı dostu
- WordPress çekirdeği ile tam uyumlu
- Kodla uğraşmadan tema ayarlarını yönetme imkanı
- Tema ürünleştirmek isteyenler için olmazsa olmaz
🧪 1. Customizer Temel Yapısı
functions.php içine şunu ekleyerek başlayalım:
function benim_tema_customize_register($wp_customize) {
// Section oluştur
$wp_customize->add_section('benim_tema_ayarlar', array(
'title' => __('Tema Ayarları', 'benim_tema'),
'description' => __('Logo, renk ve footer ayarları.', 'benim_tema'),
'priority' => 30,
));
// Ayar: Site logosu
$wp_customize->add_setting('benim_logo');
$wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'benim_logo', array(
'label' => __('Site Logosu', 'benim_tema'),
'section' => 'benim_tema_ayarlar',
'settings' => 'benim_logo',
)));
}
add_action('customize_register', 'benim_tema_customize_register');
🎨 2. Renk Seçici Eklemek
$wp_customize->add_setting('ana_renk', array(
'default' => '#3498db',
'sanitize_callback' => 'sanitize_hex_color'
));
$wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'ana_renk', array(
'label' => __('Ana Renk', 'benim_tema'),
'section' => 'benim_tema_ayarlar',
'settings' => 'ana_renk',
)));
CSS tarafında bu rengi kullanmak için inline stil ya da :root değişkeni ile entegre et:
<style>
:root {
--ana-renk: <?php echo get_theme_mod('ana_renk', '#3498db'); ?>;
}
</style>
📝 3. Footer Yazısı Değiştirilebilir Olsun
$wp_customize->add_setting('footer_yazi', array(
'default' => '© 2025 Tüm hakları saklıdır.',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('footer_yazi', array(
'label' => __('Footer Yazısı', 'benim_tema'),
'section' => 'benim_tema_ayarlar',
'type' => 'text',
));
Footer dosyasında kullanmak:
<p><?php echo esc_html(get_theme_mod('footer_yazi')); ?></p>
📦 4. Bonus – Aç/Kapat Anahtarı
$wp_customize->add_setting('sidebar_goster', array(
'default' => true,
'sanitize_callback' => 'wp_validate_boolean',
));
$wp_customize->add_control('sidebar_goster', array(
'label' => __('Sidebar gösterilsin mi?', 'benim_tema'),
'section' => 'benim_tema_ayarlar',
'type' => 'checkbox',
));
Kullanımı:
<?php if (get_theme_mod('sidebar_goster', true)) : ?>
<?php get_sidebar(); ?>
<?php endif; ?>
📱 5. Customizer Paneli Nerede Görülür?
- Admin panelinde: Görünüm > Özelleştir
- Kendi özel başlığınızla “Tema Ayarları” bölümü gelir
🚀 Gelişmiş Konular (İleri Seviye)
- Sekmeli Customizer yapıları (
panel,section,controlhiyerarşisi) - ACF Pro ile özel tema paneli oluşturmak
- Theme Settings API ile tamamen ayrı admin paneli (ACF alternatifi)
customize_preview.jsdosyası ile canlı stil değiştirme
🔚 Sonuç: Temanız Artık Hazır!
🎉 Artık temanız sadece frontend değil, backend tarafında da yönetilebilir oldu.
Bu adımla temanız profesyonel WordPress temalarla yarışabilecek seviyeye geldi.