https://www.halilbeycan.com/274.gif

Wordpress Özelleştir Bölümüne Alanlar Ekleme

385
5 ay önce
 0

Selam yine uzun süredir makale yazacak zaman bulamıyordum ve birazcık zaman bulmuşken bugün Wordpress Özelleştir Bölümüne Alanlar Ekleme konusunu ele alacağım.

Ben normalde tema geliştirir iken custom tema yönetim panelleri kullanırım.

Ama R10 üzerinden bir arkadaşımız Wordpress Özelleştir Bölümüne Alanlar Ekleme nasıl olur diye sormuştu. Ben normalde şahsen bu özelliği hiç kullanmamıştım.

Ve tabi ki normal olarak Türkçe kaynak kıtlığı az olduğu için sanırım arkadaşımızda net bir şeyler bulamamıştı. Ben biraz codexde biraz başka sitelerde dolaştım.

Ve size temel olarak mantığını aktaracağım sadece çeşitli alanlar eklemek için makalenin sonunda vereceğim kaynakları (İngilizce) kullanabilirsiniz.

Yinede sorularınızı yorum yaparak iletirseniz elimden geldiğince yardımcı olmaya çalışırım neyse çok konuştum konumuza geçelim.

Wordpress Özelleştir Bölümüne Alanlar Ekleme

function add_customizer_field($wp_customize) {
}

Öncelikle yukarıdaki basit fonksiyon kalıbı ile başlıyoruz bu kalıbı temanızın functions.php dosyasına ekleyin. Ama genelde ben bu durumlarda benzer şeyi defalarca tekrarlayacağım konularda.

Ve tema güvenliği açısından sorun çıkartmayacak dosyaları ayrı bir dosya olarak hazırlayıp functions.php dosyasına include ediyorum sizde bu şekilde yapabilirsiniz.

Neyse kaldığımız yerden devam edelim şimdi yukarıdaki fonksiyonumuzu add_action yani wordpress kancalama (Hook) sistemi ile customize_register fonksiyonuna kancalıyoruz.

add_action('customize_register', 'add_customizer_field');

Temelde 3 fonksiyon kullanacağız bunlar

Alan Oluşturma

$wp_customize->add_section( 'Bölüm İD',  Dizi)

Yukarıdaki kod bizim alan yani nasıl diyim menüyü oluşturmamıza yarıyor. Şöyle resim verirsem daha iyi anlarsınız.

wordpress özelleştir alanına alan ekleme
wordpress özelleştir alanına alan ekleme

Ve yukarıda ki fonksiyonumuz dize olarak değer almakta yani temiz kod yazımı açısından aşağıdaki şekilde kullanabilirsiniz.

$section=array(
    'title'=> 'Başlık Alanı',
);
$wp_customize->add_section( 'baslikalan',  $section);

Şimdi yukarıdaki kodu

function add_customizer_field($wp_customize) {
}

Adı fonksiyonumuzun içine eklerseniz özelleştir bölümünde başlık alanı diye bir alan çıkar ve biz diğer control kodlarımızı bu alanın içine ekleyeceğiz.

Aldığı parametrelere ise bu adresten ulaşabilirsiniz.

Ayar Oluşturma

$wp_customize->add_setting( 'Ayar İD',  Dizi)

Ayar oluşturmak içinde yukarıdaki kodu kullanacağız yine aynı add_section da ki gibi bir id ve dize almakta yine temiz kod yazımı ve okunabilirliği açısından aşağıda ki şekilde kullanabilirisiniz.

$setting = array(
 'capability' => 'edit_theme_options'
 );

$wp_customize->add_setting( 'basliksetting',  $setting);

Yine bu alanında aldığı parametreleri bu adresten öğrenebilirsiniz.

Kontrol Alanı Oluşturma

Şimdi bu section yani alanın içine ekleyeceğimiz alanları yani asıl ayar bölümlerimizi ekleyelim.

$wp_customize->add_control( Ayar İd, Dizi);

Yukarıdaki kodu da aşağıdaki şekilde daha doğrusu yukarılarda belirttiğim şekilde kullanabilirsiniz.

$control = array(
 'label' => 'Başlık Giriniz',
 'section' => 'baslikalan',
 'type' => 'text',
 'description' => 'Buradan Başlık Girebilirsiniz',
 );

 $wp_customize->add_control( 'basliksetting', $control );

Ama burada önemli bir unsur bulunmakta ayar id bölümüne $wp_customize->add_setting te kullandığınız id yi girmelisiniz.

Ve parametreler içindeki section bölümüne de $wp_customize->add_section ile oluşturduğunuz alanın id sini girmelisiniz ki o alanın içinde gözüksün.

Bu fonksiyonun aldığı parametreleri de bu sayfadan öğrenebilirsiniz.

Peki son hali ne ?

wordpress özelleştir alanına alan ekleme
wordpress özelleştir alanına alan ekleme
wordpress özelleştir alanına alan ekleme 2
wordpress özelleştir alanına alan ekleme 2

Şimdi yukarıdaki başlık giriniz bölümüne bir başlık girin ve kaydedin sonra bu veriyi aşağıdaki şekilde alabilirsiniz.

<?php echo get_theme_mod( "basliksetting" ); ?>

Yani parametreleri pek detaylı bir şekilde anlatmadım ama kusura bakmayın zaten codex üzerinden de kolayca çeviri ile anlayabilirsiniz diye detaya girmiyorum.

Çünkü bu konu başlangıç aşaması biri için değil ortalama orta düzey bir wordpress codex bilgisine sahip birisi için yazılmış bir konu.

Kaynaklar

Yazar
{beycan1532@gmail.com}

Merhaba ben Halil Front-end developer ve wordpress tema geliştiricisiyim bilgisayara olan ilgim 10. yaşlarıma dayanmakta. 15-16 yaşlarımda bilgisayar kullanmayı iyice çözdüm ve programlamaya ilgi duymaya başladım ilk olarak visualbasic.net ile kendi çapımda kendim için programlar geliştirdim zamanla web'e ilgi duydum ve internet sitesi kurmak istedim tabi hosting domain bilmediğim için bedavasitem ve wix gibi siteler ile yapmıştım bunu ama sürekli araştıran öğrenen ve kendini geliştiren biri olduğum için kısa süre sonra domain ve hosting'in ne olduğunu öğrendim sonra ilk .com'lu sitemi açtım o sırada wordpress ile tanıştım zaten programlamaya ilgimin olması sayesinde wordpress için tema geliştirmek istedim ve ilk wordpress temamı hazır bir html şablonu wordpress'e entegre ederek hazırlamıştım sonrasında ise html, css ve js öğrenerek kendimi geliştirdim ve şuan müşterilim için front-end development ve wordpress tema geliştirme işleri yapıyorum.

Yorumlar (Toplam 2 Yorum)

  1. Profil Resim Yok
    Onur89TR

    Çok teşekkürler hocam. 😊 Web sitenizi takibe alıyorum

    • Ben teşekkür ederim yararlı oldu ise sevindim.

    Bir cevap yazın

    Zorunlu Alanlar "*" İle İşaretlenmiştir