Drupal Modül geliştirme örneklerimize PHP/Drupal değişkenlerini JavaScript olarak işleme örneği ile başlıyoruz. Buradaki örnekte Drupal'daki bir değeri tarayıcı tarafında çalışan Javascript'e göndereceğiz.

Drupal'da modül geliştirirken Drupal-PHP değişkenlerini JavaScript/jQuery'e göndermeniz gereken durumlar olabilir. Drupal 7 için yazacağımız aşağıdaki örnekte; Drupal'daki Kullanıcı adını Alert ile ekrana göstereceğiz.

<?php
function jstest_menu() {
$items = array();
$items['js-test'] = array(
'title' => t('Javascript Değişkenleri'),
'description' => t('Javascript Değişkenlerini test ediyoruz.'),
'page callback' => 'jstest_page_callback_js_vars',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
}
?>

Yukarıdaki örnekte; hook_menu ile bir sayfa oluşturduk ve jstest_page_callback_js_vars fonksiyonunu çağırdık. Şimdi de js-test menüsünden çağırdığımız javascript kodunu oluşturalım;

<?php
     function jstest_page_callback_js_vars() {
        drupal_add_js(drupal_get_path('module','jstest') . '/js/script.js');
        $js_vars = array(
 'js_vars' => array(
 'message' => t('Merhaba @username', array('@username' => $GLOBALS['user']->name)),
 'an_array' => array('renk' => t('red'), 'isim' => t('Veli'), ),
 ),
 );
drupal_add_js($js_vars, 'setting');
 return "TEST";
}
?>
 

Ve drupal_add_js ile eklediğimiz js/script.js dosyasının içeriği;

$(document).ready(function(){
 console.debug(Drupal.settings.js_vars);
 alert(Drupal.settings.js_vars.message);
});  

Yukarıdaki örneği tarayıcınızdan http://siteniz.com/js-test olarak çağırdığınızda kullanıcı adınız Alert ile gösterilecektir

Kategori