İlginizi Çekebilir
  1. Ana Sayfa
  2. PHP

Elementor Form Verilerini Aktif Veritabanına Kaydetmek

Elementor Form Verilerini Aktif Veritabanına Kaydetmek
Elementor Form Verilerini Aktif Veritabanına Kaydetmek
+ - 0

Merhaba, bu yazı da Elementor Form Verilerini Aktif Veritabanına Kaydetmek işlemine bakacağız. Elementor bir wordpress eklentisi olup, site yapıcı olarak kullanılır ve wordpress üzerinde 5 milyondan fazla indirmeye sahiptir.

 

Elementor Form Verilerini Aktif Veritabanına Kaydetmek

Bu öğreticide, Elementor form verilerini bir MySQL veritabanına nasıl kaydedeceğinizi öğreneceksiniz.  Elementor’un birkaç “Gönderdikten Sonra Eylemler” seçeneği olsa da, WordPress web sitenize bazı PHP kodları ekleyerek Elementor Forms API’sini doğrudan kullanabilirsiniz.

Bu, yapmakla ilgilendiğiniz bir şeye benziyorsa, sizi bu öğreticiyi takip etmeye davet edin.

1. Elementor Canvas’a Form Widget’ı ekleyin

Form widget’ını Elementor tuvalinize sürükleyip bırakın. Bu örnekte, Elementor’da üç giriş öğesi içeren varsayılan formla çalışacağız:

  • NAME
  • EMAIL
  • MESSAGE

Bu kesinlikle basitlik içindir ve bu eğitimdeki kavramlar her tür girdi öğesi veya form tasarımı için çalışacaktır. Varsayılan Elementor form widget’ı şöyle görünür.elementor-default-form-widget

2. Veriler için MySQL Tablosu Oluşturun

Ardından, form verilerini tutmak için WordPress veritabanımızda bir MySQL tablosu oluşturmak istiyoruz. Bu örnekte, tablonun üç sütunu olacaktır:

  1. Name
  2. Email
  3. Message

İşleri basit tutmak için, bu sütunların her birinin veri türü METİN olabilir.

Tabloyu oluşturmak için phpmyadmin’i kullanabilir veya bunu doğrudan komut satırında MySQL ile yapabilirsiniz.

 

3. Elementor Form Verilerini MySQL’e Kaydet

Son olarak, formdan gönderilen verileri almak ve veritabanımıza eklemek için Elementor Forms API’sinin new_record işlevinden yararlanabiliriz.

Aşağıdaki PHP kod parçasını kopyalayıp WordPress temanızın functions.php dosyasına yapıştırın ( ideal olarak alt temanız ).). Functions.php dosyanız , WordPress yönetici kontrol panelinizde > Görünüm > Tema Düzenleyici’de bulunur.

add_action ( 'elementor_pro/forms/new_record' , işlev ( $kayıt, $ajax_handler ) {     
    
    $raw_fields = $kayıt -> get ( 'alanlar' ) ;  
    $alanlar = [] ;
    foreach ( $raw_fields as $id = > $alan ) {       
        $alanlar[ $id ] = $alan[ 'değer' ] ;  
    }
    
    küresel $wpdb ; 
    $output[ 'başarı' ] = $wpdb -> insert ( 'demo' , dizi ( 'ad' = > $alanlar[ 'ad' ] , 'eposta' = > $alanlar[ 'eposta' ] , 'mesaj' = > $alanlar[ 'mesaj' ])) ;    
    
    $ajax_handler -> add_response_data ( doğru , $çıktı ) ;  
    
}, 10, 2);

 

Yukarıdaki koddan da görebileceğiniz gibi, ilk olarak input record parametresinden form verilerini alıyoruz ve daha sonra MySQL tablomuza isim, email ve mesajı ekliyoruz.

İyi bir önlem için, müşteriye ekin durumunu geri göndeririz (1 başarı, 0 başarısızlık anlamına gelir), ancak bu adım bu temel örnek için isteğe bağlıdır.

Şimdi, Elementor formunu doldurup verileri gönderdiğinizde, MySQL veritabanınıza eklenecektir.

Elementor Form Verilerini Aktif Veritabanına Kaydetmek

 

Birden Çok Form Nasıl Kullanılır?

Web sitenizde birden fazla form varsa, elementor_pro/forms/new_record koduna aşağıdaki gibi bir if bloğu ekleyin:

add_action ( 'elementor_pro/forms/new_record' , işlev ( $kayıt, $ajax_handler ) {     
    if ( 'MY_FORM' == $form_name ) {    
        // MY_FORM için mantık
        ...
    } else if ( 'MY_OTHER_FORM' == $form_name ) {      
        // MY_OTHER_FORM için mantık
        ...
    }
    ...
}, 10, 2)

 

NOT: Bu yazı bir çeviri yazısıdır. Orjinal yazıya gitmek için tıklayabilirsiniz.

 


Elementor Form Verilerini Aktif Veritabanına Kaydetmek yazımızda bu kadardı arkadaşlar.  Umarım faydalı olmuştur. Diğer yazılarda görüşmek üzere…

PHP Dersleri için başlattığım repoya bağlantıya tıklayarak ulaşabilirsiniz. Tüm PHP yazılarım için tıklayabilirsiniz. Ayrıca Wordpress ve Elementor hakkındaki yazılarım içinde bağlantıya tıklayabilirsiniz.

Discord sunucuma katılmayı unutmayın. :D

Kodla kalın. :)

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)