page-loader page-loader page-loader
web logo

" Bir yolun yalnız yolcusu… "

hızmetler
X : / Kod / WordPress /

2023-05-25


WordPress Tema sanitize_callback Kullanımı

 logo

sanitize_callback Nedir

WordPress Tema sanitize_callback Kullanımı. WordPress temaları, kullanıcıların web sitelerini özelleştirmelerine olanak tanıyan tema ayarlarına sahip olabilir. Bu ayarlar, sitenin görünümünü değiştirmek için kullanıcıların tercihlerini kontrol etmelerine olanak sağlar. Ancak, kullanıcıların girişlerinin güvenliğini sağlamak önemlidir. WordPress, sanitize_callback işlevlerini kullanarak bu güvenliği sağlamak için bir dizi önceden tanımlanmış işlev sunar. Bu blog yazısında, WordPress temalarında sanitize_callback işlevlerinin kullanımını ve $wp_customize->add_setting ile normal ekrana bastırma işlemlerini inceleyeceğiz.


WordPress Tema sanitize_callback Kullanımı

WordPress tema ayarlarını tanımlamak için $wp_customize->add_setting fonksiyonu kullanılır. Bu fonksiyon, bir dizi parametre alırken, sanitize_callback parametresi ile girişin temizlenmesi için bir işlev belirtebiliriz. Örneğin, bir renk seçici ayarı tanımlamak istediğimizde sanitize_callback parametresini ‘sanitize_hex_color’ işleviyle kullanabiliriz.

$wp_customize->add_setting('my_theme_color_setting', array(
    'sanitize_callback' => 'sanitize_hex_color',
));

Yukarıdaki örnek, ‘my_theme_color_setting’ adında bir tema ayarı tanımlar ve kullanıcının girdiği renk değerini temizlemek için ‘sanitize_hex_color’ işlevini kullanır.


Temadaki ayarın normal ekrana bastırılması:

Tema ayarlarını kullanarak web sitesinde görünen içeriği değiştirebiliriz. Örneğin, kullanıcının belirlediği bir metni bir başlık olarak göstermek istediğimizi varsayalım. Bu durumda, get_theme_mod işlevini kullanarak temanın ayar değerini alabiliriz ve çıktıyı güvenli bir şekilde bastırmak için esc_html__ işlevini kullanabiliriz.

<h1><?php echo esc_html__(get_theme_mod('content_text')); ?></h1>

Yukarıdaki örnek, ‘content_text’ adlı bir tema ayarını alır ve içeriği bir başlık olarak ekrana bastırır. get_theme_mod işlevi, belirli bir tema ayarının değerini döndürürken, esc_html__ işlevi çıktıyı güvenli hale getirir.


WordPress Tema sanitize_callback Kullanımı

Temizleme Fonksiyonları ve Kullanım Amacları

sanitize_text_field($str):

Bu fonksiyon, metin girişlerini temizlemek için kullanılır. HTML etiketlerini kaldırır ve potansiyel olarak zararlı karakterleri temizler. Özellikle kullanıcı girişlerini temizlemek için sıklıkla kullanılır.
Örnek kullanım:

$clean_text = sanitize_text_field($user_input);

sanitize_email($email):

Bu fonksiyon, bir e-posta adresini temizlemek ve doğrulamak için kullanılır. Geçerli bir e-posta adresine sahip olup olmadığını kontrol eder ve gerektiğinde hatalı karakterleri temizler.
Örnek kullanım:

$clean_email = sanitize_email($user_input);

sanitize_url($url):

Bu fonksiyon, bir URL’yi temizlemek ve doğrulamak için kullanılır. URL’nin geçerli bir biçime sahip olup olmadığını kontrol eder ve potansiyel olarak zararlı karakterleri temizler.
Örnek kullanım:

$clean_url = sanitize_url($user_input);

absint($number):

Bu fonksiyon, bir sayı değerini pozitif bir tamsayıya dönüştürmek için kullanılır. Sayısal değerlerin yanı sıra, girişi 0’a yuvarlar ve sadece rakamları kabul eder.
Örnek kullanım:

$clean_number = absint($user_input);

esc_html($str):

Bu fonksiyon, metin içeriğini HTML karakterlerinden kaçınmak için kullanılır. Potansiyel olarak zararlı HTML kodlarını güvenli bir şekilde temizler.
Örnek kullanım:

$clean_html = esc_html($user_input);

esc_attr($str):

Bu işlev, HTML özniteliği değerlerini temizlemek ve kaçış karakterleri eklemek için kullanılır. Potansiyel olarak zararlı karakterleri güvenli bir şekilde temizler.
Örnek kullanım:

$clean_attr = esc_attr($user_input);

esc_js($str):

Bu işlev, JavaScript içeriğini temizlemek ve kaçış karakterleri eklemek için kullanılır. Potansiyel olarak zararlı JavaScript kodlarını güvenli bir şekilde temizler.
Örnek kullanım:

$clean_js = esc_js($user_input);

esc_sql($str):

Bu işlev, SQL sorgularında kullanılan dize değerlerini temizlemek ve kaçış karakterleri eklemek için kullanılır. Potansiyel olarak zararlı SQL ifadelerini güvenli bir şekilde temizler.
Örnek kullanım:

$clean_sql = esc_sql($user_input);

esc_url_raw($url):

Bu işlev, URL’leri temizlemek için kullanılırken kaçış karakterleri eklemeyi atlar. Bu işlev, önceden temizlenmiş URL’leri güvenli bir şekilde döndürür.
Örnek kullanım:

$clean_url = esc_url_raw($user_input);

esc_url($url):

Bu işlev, bir URL’yi temizlemek ve kaçış karakterlerini eklemek için kullanılan bir WordPress işlevidir. Potansiyel olarak zararlı URL’leri güvenli hale getirir ve XSS (Cross-Site Scripting) saldırılarına karşı koruma sağlar.

$url = esc_url($user_input);


Bu temizleme fonksiyonları, kullanıcı girişlerini temizlemek ve güvenli bir şekilde kullanmak için yaygın olarak kullanılan araçlardır. Her biri farklı türden girişleri temizlemek ve zararlı içeriği önlemek için özel olarak tasarlanmıştır. WordPress geliştirme sürecinde bu fonksiyonları kullanarak güvenliğe öncelik vermek önemlidir.


Sonuç olarak WordPress temalarında sanitize_callback işlevlerini kullanmak, kullanıcıların girdilerinin güvenliğini sağlamak için önemlidir. $wp_customize->add_setting fonksiyonu ile tema ayarlarını tanımlarken sanitize_callback parametresini belirleyebiliriz. Bu sayede, kullanıcı girişlerini temizleyebilir ve potansiyel olarak zararlı içerikleri engelleyebiliriz. Ayrıca, get_theme_mod işlevi ile temanın ayar değerlerini alırken, çıktıyı güvenli bir şekilde bastırmak için esc_html__ işlevini kullanabiliriz.

Bu örnekler, WordPress temalarında sanitize_callback kullanımının nasıl gerçekleştirilebileceğini ve temadaki ayar değerlerini nasıl güvenli bir şekilde kullanabileceğimizi göstermektedir.

Kaynak

https://developer.wordpress.org/apis/security/sanitizing/
Etiketler :

# , # , # , # , # , #



Okumak ilerlemenin bir parçasıdır.

– EW

YORUMLAR



Bir cevap yaz


E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlendi *